Scribus:如何找到使用过两次的图像?
Scribus: How can I find images used twice?
如何找到在 scribus 文档中多次使用的图像?
是否可以在 scribus 文档中搜索多次使用的图像?
不,不是真的。
但是在"Extras > Manage Image"中您可以对您使用过的图像有一个概览。
它可能会帮助您检测重复项。
您还可以编写一个简单的 Python 脚本,遍历文档中的所有图像并告诉您在哪些页面上有重复...
根据您在评论中的反馈,我浏览了 https://wiki.scribus.net/canvas/Category:Scripts 并编写了一个简单的脚本,列出了您文档中每个图像的路径:
import scribus
for page in range(1, scribus.pageCount() + 1):
scribus.gotoPage(page)
for item in scribus.getPageItems():
if item[1] == 2:
print(scribus.getImageFile(item[0]))
您可以轻松地对其进行调整以检测重复的图像并对其进行处理。
您可以通过进入帮助并查找 "For Developers > Scripter API" 或在 Scribus Wiki 中获得有关 Scribus Python API 的进一步帮助。
如果您制作的脚本对其他人有用,请不要忘记发布并在此处添加 link!
有了这个 script 我在文本文件中得到了可用的数据。从那里我可以使用 Perl 过滤掉多次使用的图像。
我是如何执行脚本的:
用 Scribus 打开 sla 文件。
Select 在 Scribus 菜单栏 Scripter -> Show Console
中打开一个新的 window:脚本控制台
在脚本控制台菜单栏中:
File -> Open
和 select python 脚本;然后
Script -> Run
如果我们重用 a.l.e
所示的代码块,
我们可以天真地使用哈希图来确保图像是否
尚未找到。
运行 作为 Scribus 脚本:
import scribus
db = {}
for page in range(1, scribus.pageCount() + 1):
scribus.gotoPage(page)
for item in scribus.getPageItems():
if item[1] == 2:
k = scribus.getImageFile(item[0])
if k in db:
db[k] += 1
print(k, db[k])
else:
db[k] = 1
如何找到在 scribus 文档中多次使用的图像?
是否可以在 scribus 文档中搜索多次使用的图像?
不,不是真的。
但是在"Extras > Manage Image"中您可以对您使用过的图像有一个概览。 它可能会帮助您检测重复项。
您还可以编写一个简单的 Python 脚本,遍历文档中的所有图像并告诉您在哪些页面上有重复...
根据您在评论中的反馈,我浏览了 https://wiki.scribus.net/canvas/Category:Scripts 并编写了一个简单的脚本,列出了您文档中每个图像的路径:
import scribus
for page in range(1, scribus.pageCount() + 1):
scribus.gotoPage(page)
for item in scribus.getPageItems():
if item[1] == 2:
print(scribus.getImageFile(item[0]))
您可以轻松地对其进行调整以检测重复的图像并对其进行处理。
您可以通过进入帮助并查找 "For Developers > Scripter API" 或在 Scribus Wiki 中获得有关 Scribus Python API 的进一步帮助。
如果您制作的脚本对其他人有用,请不要忘记发布并在此处添加 link!
有了这个 script 我在文本文件中得到了可用的数据。从那里我可以使用 Perl 过滤掉多次使用的图像。
我是如何执行脚本的:
用 Scribus 打开 sla 文件。
Select 在 Scribus 菜单栏 Scripter -> Show Console
中打开一个新的 window:脚本控制台
在脚本控制台菜单栏中:
File -> Open
和 select python 脚本;然后
Script -> Run
如果我们重用 a.l.e
所示的代码块,
我们可以天真地使用哈希图来确保图像是否
尚未找到。
运行 作为 Scribus 脚本:
import scribus
db = {}
for page in range(1, scribus.pageCount() + 1):
scribus.gotoPage(page)
for item in scribus.getPageItems():
if item[1] == 2:
k = scribus.getImageFile(item[0])
if k in db:
db[k] += 1
print(k, db[k])
else:
db[k] = 1