summaryrefslogtreecommitdiffstats
path: root/scribus/plugins/scriptplugin/samples/ExtractText.py
diff options
context:
space:
mode:
authorcraig <craig@11d20701-8431-0410-a711-e3c959e3b870>2012-01-01 11:40:09 +0000
committercraig <craig@11d20701-8431-0410-a711-e3c959e3b870>2012-01-01 11:40:09 +0000
commit7ed83b6c6666eb8b6b104c211ae7e52907350372 (patch)
tree4430b556abac0ad660a0aacf1887d77f85d8be02 /scribus/plugins/scriptplugin/samples/ExtractText.py
downloadscribus-7ed83b6c6666eb8b6b104c211ae7e52907350372.tar.gz
scribus-7ed83b6c6666eb8b6b104c211ae7e52907350372.tar.xz
scribus-7ed83b6c6666eb8b6b104c211ae7e52907350372.zip
Branch 1.3.5 tree to 1.4.x tree, goodbye 1.3.x
git-svn-id: svn://scribus.net/branches/Version14x/Scribus@17163 11d20701-8431-0410-a711-e3c959e3b870
Diffstat (limited to 'scribus/plugins/scriptplugin/samples/ExtractText.py')
-rw-r--r--scribus/plugins/scriptplugin/samples/ExtractText.py81
1 files changed, 81 insertions, 0 deletions
diff --git a/scribus/plugins/scriptplugin/samples/ExtractText.py b/scribus/plugins/scriptplugin/samples/ExtractText.py
new file mode 100644
index 0000000..506174f
--- /dev/null
+++ b/scribus/plugins/scriptplugin/samples/ExtractText.py
@@ -0,0 +1,81 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+
+"""
+
+(C)2006.03.04 Gregory Pittman
+
+(C)2008.02.28 Petr Vanek - fileDialog replaces valueDialog
+
+this version 2008.02.28
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GPL, v2 (GNU General Public License as published by
+the Free Software Foundation, version 2 of the License), or any later version.
+See the Scribus Copyright page in the Help Browser for further informaton
+about GPL, v2.
+
+SYNOPSIS
+
+This script takes the current document and extracts all the text from text frames,
+and also gets the pathnames to all images. This is then saved to a file named
+by the user.
+
+REQUIREMENTS
+
+You must run from Scribus and must have a file open.
+
+USAGE
+
+Start the script. A file dialog appears for the name of the file
+to save to. The above information is saved to the file.
+
+"""
+# Craig Bradney, Scribus Team
+# 10/3/08: Added to Scribus 1.3.3.12svn distribution "as was" from Scribus wiki for bug #6826, script is GPLd
+
+import scribus
+
+
+def exportText(textfile):
+ page = 1
+ pagenum = scribus.pageCount()
+ T = []
+ content = []
+ while (page <= pagenum):
+ scribus.gotoPage(page)
+ d = scribus.getPageItems()
+ strpage = str(page)
+ T.append('Page '+ strpage + '\n\n')
+ for item in d:
+ if (item[1] == 4):
+ contents = scribus.getAllText(item[0])
+ if (contents in content):
+ contents = 'Duplication, perhaps linked-to frame'
+ T.append(item[0]+': '+ contents + '\n\n')
+ content.append(contents)
+ elif (item[1] == 2):
+ imgname = scribus.getImageFile(item[0])
+ T.append(item[0]+': ' + imgname + '\n')
+ page += 1
+ T.append('\n')
+ output_file = open(textfile,'w')
+ output_file.writelines(T)
+ output_file.close()
+ endmessage = textfile + ' was created'
+ scribus.messageBox("Finished", endmessage,icon=0,button1=1)
+
+
+if scribus.haveDoc():
+ textfile = scribus.fileDialog('Enter name of file to save to', \
+ filter='Text Files (*.txt);;All Files (*)')
+ try:
+ if textfile == '':
+ raise Exception
+ exportText(textfile)
+ except Exception, e:
+ print e
+
+else:
+ scribus.messageBox('Export Error', 'You need a Document open, and a frame selected.', \
+ icon=0, button1=1)