小编Kur*_*fle的帖子

使用Ghostscript从PDF中提取文本 - 未知设备:txtwrite

我正在尝试从PDF中提取文本.我正在使用Ghostscript,但是当我运行下面的命令时

gs -dBATCH -dNOPAUSE -sDEVICE=txtwrite mypdf.pdf

发生错误.这一个在下面.

Unknown device: txtwrite
Unrecoverable error: undefined in .uninstallpagedevice
Operand stack:
             defaultdevice
Run Code Online (Sandbox Code Playgroud)

有什么想法吗?是不是txtwrite默认的ghostscript设备?

这是输出 gs -v

GPL Ghostscript 8.70 (2009-07-31)
Run Code Online (Sandbox Code Playgroud)

那个操作系统版本CentOS release 5.8 (Final).

pdf text extract ghostscript

3
推荐指数
1
解决办法
2313
查看次数

使用ImageMagick将PDF转换为PNG或JPEG非常慢

我有一个使用PHP和ImageMagick工作的PDF到PNG转换脚本,但我遇到了转换速度的问题.

我知道它的工作原理是因为使用非常小的PDF,转换所用的时间并不是那么好,但是使用250kb的文件(实际上还不是那么大),转换需要超过20分钟.

这是PHP:

//***** GET PATH TO IMAGEMAGICK *****
$path_to_imagemagick = trim(`which convert`);

//***** PATH TO PDF TO CONVERT *****
$path_to_pdf = getcwd() . "/pdf/myfile.pdf[0]";

//***** PATH TO OUTPUT TO *****
$output_path = getcwd() . "/pdfimage/test_converted.png";

@exec($path_to_imagemagick . " -density 72 -quality 60 -resize 150x " . $path_to_pdf . " " . $output_path);
Run Code Online (Sandbox Code Playgroud)

我可以更改任何设置以加快速度吗?

如果有帮助,图像不需要是PNG.如果JPEG更快,我很乐意接受它.

php imagemagick image-conversion

3
推荐指数
1
解决办法
4446
查看次数

如何识别扫描图像中的文本存在模式并进行裁剪?

扫描文档的智能裁剪

最近我接手了旧书/手稿的保存项目.它们数量巨大,近10,000页.我不得不用便携式扫描仪手动扫描它们,因为它们不能在自动书籍扫描仪中扫描.

当我开始在Photoshop中编辑它们时,真正的问题出现了.请注意,它们都基本上是文档(JPG格式),并且这些文档中绝对没有图像.它们使用不同的语言(Oriya),我相信在不久的将来不会有任何OCR软件可用.(如果有,请告诉我.)

为了使这些图像(文档)看起来干净和优雅,我必须裁剪它们,定位它们,稍微增加对比度,用橡皮擦清洁不必要的斑点,等等.我能够在Photoshop中自动化大多数这些过程,但裁剪是我遇到困难的地方.我无法自动裁剪,因为软件无法在img(doc)的某个区域中重新识别文本或内容的存在; 它只是应用赋予它的值进行裁剪.

我想要一个解决方案来自动化这个裁剪过程.我已经想到了这个想法,我不知道它是否足够实用,据我所知,市场上还没有软件能够做到这一点.

对此的可能解决方案:如果工具可以识别图像中文本的存在(这不是非常关键,因为它们都是普通文档图像,其中没有图像,没有图案只是普通矩形)并且可以裁剪它从每一侧的文本边界向外输出,这样它就可以输出没有任何边距的文档图像.其余的任务可以使用Photoshop自动完成,例如为边距添加空格,使用对比度和颜色进行调整,使其更具可读性等.

这是画廊的专辑链接.我可以发布更多样本图片,如果它有用 - 请告诉我.

http://imageshack.us/g/1/9800204/

以下是通过以上链接提供的更大图像样本中的一个示例:

一个更大的集合的一个例子......

photoshop imagemagick image-processing photoshop-cs4

3
推荐指数
1
解决办法
4916
查看次数

PDF低级:文本渲染

我正在尝试以PDF格式呈现文本.我可以渲染基于矢量的图形,但我也希望它伴随着文本.

在下面提供的测试代码中,文件(当保存为.pdf时)将通过使用矢量图形绘制在左上角显示"Test".

我想使用以下基于文本的命令编写'Test'

BT
/F5 16 Tf
100 100 Td
(Test) Tj
ET
Run Code Online (Sandbox Code Playgroud)

要么

BT
9.6 0 0 9.6 200 200 Tm
/f-0-0 1 Tf
[<0001>169<000200030004>]TJ
ET
Run Code Online (Sandbox Code Playgroud)

但是,似乎都没有产生所需的文本.有什么额外的东西我需要用Tf命令做什么,我将把它包含在我的.pdf源文件中?

您可以使用此pastebin源下载该文件(将扩展名修改为.pdf):

%PDF-1.7
    %¿÷¢þ
    %QDF-1.0
    
    %% Original object ID: 6 0
    1 0 obj
    <<
      /Pages 3 0 R
      /Type /Catalog
    >>
    endobj
    
    %% Original object ID: 5 0
    2 0 obj
    <<
      /Author (None)
      /CreationDate (D:20150109100433)
      /Creator (None)
      /Keywords (None)
      /ModDate (D:20150109100433)
      /Producer (None)
      /Subject (None)
      /Title …
Run Code Online (Sandbox Code Playgroud)

pdf fonts text pdf-generation

3
推荐指数
1
解决办法
219
查看次数

ImageMagick拆分PDF输出文件名始终从零开始

我运行以下命令在ImageMagick中拆分PDF:

convert file.pdf [5-10] file.png

生成的输出文件始终以零开头.那是:

file-0.png,file-1.png,file-2.png ...

我有什么想法可能做错了吗?文档说明文件应该从5开始后缀,与提取的页面的页码相匹配.

pdf imagemagick range ghostscript

3
推荐指数
1
解决办法
719
查看次数

/差异字典,用于PDF中的编码解析问题

Type1字体/Differences编码在值的映射中使用字符串,例如1个字符被编码为'one'。它仅用于数字和特殊字符。

使用这些编码的标准方法是什么?

我应该如何从使用这种编码的PDF解码字符串?

文件链接:http : //www.filedropper.com/open

pdf embedded-fonts

3
推荐指数
1
解决办法
707
查看次数

在图像中查找边(矩形边框)

我在背景上有一张粘滞便笺的图像(比如一堵墙或一台笔记本电脑),我想要检测粘滞便笺的边缘(粗略检测也可以正常工作),这样我就可以对其进行裁剪.

我计划使用ImageMagick进行实际裁剪,但我仍坚持检测边缘.

理想情况下,我的输出应该给我4个边界点的坐标,这样我就可以在它上面运行我的裁剪.

我该怎么办呢?

stickynote

python image-manipulation imagemagick edge-detection

3
推荐指数
1
解决办法
3207
查看次数

ImageMagick:如何将目录中的多个TIFF文件批量合并为单个TIFF文件?

我的目录 c:\temp 中有 600 个 TIFF 文件。

文件名如下:

001_1.tif,
001_2.tif,
001_3.tif

002_1.tif,
002_2.tif,
002_3.tif
....
....
200_1.tif,
200_2.tif,
200_3.tif
Run Code Online (Sandbox Code Playgroud)

合并后的文件应放置在同一目录中,文件名称应如下所示:

1_merged.tif
2_merged.tif
.....
.....
200_merged.tif
Run Code Online (Sandbox Code Playgroud)

我正在寻找任何单个命令行/批处理文件通过 ImageMagick convert/mogrify命令或任何其他命令/工具来执行此操作。

请注意,总时间不应超过 5 秒。

tiff imagemagick batch-processing mogrify imagemagick-convert

3
推荐指数
1
解决办法
8198
查看次数

如何将ImageMagick输出存储到Bash变量中(然后使用它)?

我使用ImageMagick并需要对图像进行条件调整.

为此,我将identify工具的结果存储到变量中.

$infile='test.jpg'
width=$(identify -ping -format %w $infile)
height=$(identify -ping -format %h $infile)
Run Code Online (Sandbox Code Playgroud)

但在调整大小之前,我想做一些改变图像大小的转换:-trim-shave.所以我需要在修剪和调整大小之间计算图像大小.而且我只想进行一次修剪操作以进行一些优化.

所以,我想:

  1. 做修剪和剃须
  2. 商店[二进制]结果在一个变量(例如:$data)
  3. $data变量值作为输入传递给identify工具并存储其结果以进行条件调整大小
  4. 传递$dataconvert工具并完成处理

像这样的东西:

data=$(convert logo: -shave 1x1 gif:-)
width=$(echo $data | identify -ping -format %w gif:-)
echo $data | convert -resize "$width"
Run Code Online (Sandbox Code Playgroud)

但是echo根本不起作用.

PS convertidentify从ImageMagick的工具套件

bash imagemagick imagemagick-convert

3
推荐指数
1
解决办法
1144
查看次数

如何在ImageMagick中对输入的PNG文件进行排序

我正在使用以下命令制作GIF动画文件:

convert -delay 10 -loop 0 *.png animated.gif
Run Code Online (Sandbox Code Playgroud)

但是,问题按* .png的顺序发生。

我的PNG文件就像1.png,2.png,... 100.png。

在生成的动画GIF中,帧的顺序如下:1.png,10.png,100.png,2.png ...

我希望在生成的GIF中快照按顺序依次为1,2,3 ... 100。

bash imagemagick

3
推荐指数
1
解决办法
1012
查看次数