我有大约1000个pdf文件,我需要将它们转换为300 dpi的tiff文件。 做这个的最好方式是什么? 如果存在可以编写脚本的SDK或其他工具或工具,那将是理想的。

===============>>#1 票数:55 已采纳

使用Imagemagick,或者更好的是Ghostscript。

http://www.ibm.com/developerworks/library/l-graf2/#N101C2有一个imagemagick的例子:

convert foo.pdf pages-%03d.tiff

http://www.asmail.be/msg0055376363.html有一个ghostscript的例子:

gs -q -dNOPAUSE -sDEVICE=tiffg4 -sOutputFile=a.tif foo.pdf -c quit

我会安装ghostscript并阅读gs的手册页,看看需要哪些确切的选项和实验。

===============>>#2 票数:41

从命令行使用GhostScript,我在过去使用过以下内容:

在Windows上:

gswin32c -dNOPAUSE -q -g300x300 -sDEVICE=tiffg4 -dBATCH -sOutputFile=output_file_name.tif input_file_name.pdf

在* nix上:

gs -dNOPAUSE -q -g300x300 -sDEVICE=tiffg4 -dBATCH -sOutputFile=output_file_name.tif input_file_name.pdf

对于大量文件,可以使用简单的批处理/ shell脚本来转换任意数量的文件......

===============>>#3 票数:17

我写了一个小的PowerShell脚本来完成目录结构,并使用ghostscript将所有pdf文件转换为tiff文件。 这是我的脚本:

$tool = 'C:\Program Files\gs\gs8.63\bin\gswin32c.exe'
$pdfs = get-childitem . -recurse | where {$_.Extension -match "pdf"}

foreach($pdf in $pdfs)
{

    $tiff = $pdf.FullName.split('.')[0] + '.tiff'
    if(test-path $tiff)
    {
        "tiff file already exists " + $tiff
    }
    else        
    {   
        'Processing ' + $pdf.Name        
        $param = "-sOutputFile=$tiff"
        & $tool -q -dNOPAUSE -sDEVICE=tiffg4 $param -r300 $pdf.FullName -c quit
    }
}

===============>>#4 票数:8

1)安装GhostScript

2)安装ImageMagick

3)创建“Convert-to-TIFF.bat”(Windows XP,Vista,7)并使用以下行:

for %%f in (%*) DO "C:\Program Files\ImageMagick-6.6.4-Q16\convert.exe" -density 300 -compress lzw %%f %%f.tiff

将任意数量的单页PDF文件拖到此文件上会将它们转换为压缩的TIFF,速度为300 DPI。

===============>>#5 票数:7

使用python这是我最终得到的

    import os
    os.popen(' '.join([
                       self._ghostscriptPath + 'gswin32c.exe', 
                       '-q',
                       '-dNOPAUSE',
                       '-dBATCH',
                       '-r300',
                       '-sDEVICE=tiff12nc',
                       '-sPAPERSIZE=a4',
                       '-sOutputFile=%s %s' % (tifDest, pdfSource),
                       ]))

===============>>#6 票数:4

PDF Focus .Net可以这样做:

1. PDF到TIFF

SautinSoft.PdfFocus f = new SautinSoft.PdfFocus();    

string pdfPath = @"c:\My.pdf";

string imageFolder = @"c:\images\";

f.OpenPdf(pdfPath);

if (f.PageCount > 0)
{
    //Save all PDF pages to image folder as tiff images, 200 dpi
    int result = f.ToImage(imageFolder, "page",System.Drawing.Imaging.ImageFormat.Tiff, 200);
}

2. PDF到Multipage-TIFF

//Convert PDF file to Multipage TIFF file

SautinSoft.PdfFocus f = new SautinSoft.PdfFocus();

string pdfPath = @"c:\Document.pdf";
string tiffPath = @"c:\Result.tiff";

f.OpenPdf(pdfPath);

if (f.PageCount > 0)
{
    f.ToMultipageTiff(tiffPath, 120) == 0)
    {
        System.Diagnostics.Process.Start(tiffPath);
    }
}   

===============>>#7 票数:3

必需的ghostscript和tiffcp在Ubuntu中测试过

import os

def pdf2tiff(source, destination):
    idx = destination.rindex('.')
    destination = destination[:idx]
    args = [
    '-q', '-dNOPAUSE', '-dBATCH',
    '-sDEVICE=tiffg4',
    '-r600', '-sPAPERSIZE=a4',
    '-sOutputFile=' + destination + '__%03d.tiff'
    ]
    gs_cmd = 'gs ' + ' '.join(args) +' '+ source
    os.system(gs_cmd)
    args = [destination + '__*.tiff', destination + '.tiff' ]
    tiffcp_cmd = 'tiffcp  ' + ' '.join(args)
    os.system(tiffcp_cmd)
    args = [destination + '__*.tiff']
    rm_cmd = 'rm  ' + ' '.join(args)
    os.system(rm_cmd)    
pdf2tiff('abc.pdf', 'abc.tiff')

===============>>#8 票数:3

ABCPDF也可以这样做 - 退房 http://www.websupergoo.com/helppdf6net/default.html

===============>>#9 票数:2

pdf2tiff怎么样? http://python.net/~gherman/pdf2tiff.html

===============>>#10 票数:2

https://pypi.org/project/pdf2tiff/

您还可以使用pdf2ps,ps2image,然后将生成的图像转换为tiff与其他实用程序(我记得'保罗'[保罗 - 又一个图像查看器(显示PNG,TIFF,GIF,JPG等))

===============>>#11 票数:2

也许还试试这个? PDF焦点

这个.Net库允许你解决问题:)

此代码将有所帮助(将1000个PDF文件转换为C#中的300-dpi TIFF文件):

    SautinSoft.PdfFocus f = new SautinSoft.PdfFocus();

    string[] pdfFiles = Directory.GetFiles(@"d:\Folder with 1000 pdfs\", "*.pdf");
    string folderWithTiffs = @"d:\Folder with TIFFs\";

    foreach (string pdffile in pdfFiles)
    {
        f.OpenPdf(pdffile);

        if (f.PageCount > 0)
        {
            //save all pages to tiff files with 300 dpi
            f.ToImage(folderWithTiffs, Path.GetFileNameWithoutExtension(pdffile), System.Drawing.Imaging.ImageFormat.Tiff, 300);
        }
        f.ClosePdf();
    }

===============>>#12 票数:2

免责声明:为我推荐的产品工作

Atalasoft有一个可以将PDF转换为TIFF的.NET库 - 我们是FOXIT的合作伙伴,所以PDF渲染非常好。

===============>>#13 票数:1

我喜欢PDFTIFF.com 将PDF转换为TIFF ,它可以处理无限页面

  ask by gyurisc translate from so

未解决问题?本站智能推荐:

1回复

将多个TIFF文件写入PDF文件

我想编写一个Python脚本,在其中带一堆tiff文件,并将它们全部显示为一个巨大的pdf文件,以供查看。 我尝试使用python命令im.save(outfile, "PDF)但这将一个tiff文件分别保存到一个pdf文件。我应该怎么做才能将tiff文件写入同一pdf文件?
1回复

PDFBox将PDF转换为TIFF。 以字节为单位缩小图像大小

我正在尝试将pdf转换为tiff图像。 我使用pdfbox工作,但图像太大了。 假设我的PDF大小为224kb =>图像大小= 1.4Mb 如何在不丢失质量的情况下缩小tiff文件? 以下是一些代码:
1回复

如何使用Ghostscript从pdf文件中获取24位深度的LZW tiff

我正在使用Ghostscript9.0,我尝试从pdf文件生成具有24位深度的LZW TIFF图像,我总是使用以下GS命令获得位深度= 1: 我搜索了几本手册: http://ghostscript.com/doc/current/Devices.htm http://www
1回复

从base64编码的图像创建PDF或TIFF文件之前先对其进行估算

我有种感觉,这是行不通的,但是无论如何,听到@stackoverflow上的好家伙们的来信并不会有害。 我正在使用的系统中有一个模块,它将先前扫描的纸张( 图像以base64格式保存在数据库中 )转换为Tiff或PDF文件,然后将其存储在磁盘上。 客户最近请求了一项功能,该功能使他可以在磁盘
2回复

将pdf文件转换为单个图像文件? (页面顶部)

我想知道是否有人知道将多页PDF文件转换为长页面文件的好方法,页面顶部。 我能找到的所有转换器只会为您提供多个图像,每一页都是PDF。 但我需要一个单一的图像。 或者将多个图像转换为一个大图像的方法,其中一个图像在另一个图像的顶部。 谢谢
1回复

从PDF提取TIFF图像而无需解码

借助iText 5,我想从给定的PDF文件中提取所有TIFF图像,并将它们另存为TIFF文件。 实施例和其他职位( 1 , 2 )使用下面的方法: 从PDF流创建PdfImageObject ,在第189行中解码图像流(如果存在相应的过滤器实现)。 调用PdfImageObj
2回复

读取多页Tiff图像并用Java写入pdf

我正在尝试使用PDFBox将多页tiff转换为pdf,但未成功。 我无法在公司中使用apache Imaging-commons,因为它不是一个稳定的版本。 问题:无法读取多个tiff并写入pdf。 到目前为止,有效的解决方案:仅首页被写入并保存为pdf。 当tiff是单个页面时
5回复

任何第三方dll将文件从TIFF转换为PDF? [关闭]

关闭。 这个问题是题外话。 它当前不接受答案。 了解更多 。 想改善这个问题吗? 更新问
5回复

需要.NET库将TIFF文件转换为PDF [关闭]

有谁知道一个好的.NET库将TIFF文件(可能是多页)转换为PDF文件? TIFF文件存储在文件共享中,PDF文件需要存储在与TIFF文件相同的位置。 该工具应该用于转换大量的TIFF文件。
1回复

使用php的imagick将PDF文件转换为TIFF

嗨我有另一个脚本将pdf转换为tiff,这个脚本使用php的imagick库,当我执行下一个代码时,得到一个错误,任何人都可以帮助我,代码是 错误 请任何人都可以告诉我是什么问题,在网上阅读是委托解码的东西,但对我来说不明确,错误是在第一行 提前致谢 更新: c