试图让兄弟合而为一输出PDF文件

xta*_*_01 6 pdf printing

好的……首先,我对 linux 一无所知……即时学习……到目前为止只尝试了两周。安装好了。设法在 windows 和 linux 之间建立网络。

我正在尝试在一台打印机/扫描仪中安装 Brother MFC-J6935DW……设置为网络单元(以太网)。

得到了兄弟网站的驱动程序...安装没有问题。打印机效果很好。

扫描仪无法识别计算机。在这个网站上找到了一个答案,让我加载 brscan-skey,现在打印机可以看到 linux 计算机(还可以看到网络上的 windows 7 和 10 单元)。

问题 .... 即使 5 页通过文档进纸并且输出是 PNM 文件,扫描仪也只能扫描 1 页。

所以我想得到一个 PDF 输出(如果有多个页面,它们应该在一个 PDF 文件中)。

兄弟一直没有帮助......他们一直告诉我重新安装驱动程序。

我找到了三种可能的解决方案......可能还有更多......但我不知道这些是否有效。

1) python scanpdf 0.3.1 我不知道如何使用它,但看起来这可以做我想要的。需要称为 ImageMagick 和 SANE 的东西(我“认为”已经安装了 sane)。哎呀,我什至不知道python是什么?

2)有人告诉我有一个名为 gscan2pdf 的程序

3)找到这个链接:兄弟支持页面

这确实有一个注释(注意:需要安装 scanadf、pnmtops 和 ps2pdf)如果我确实找到并安装了它们,我不确定如何设置它们。

这是我的文件,我是用上面的修改我的还是替换它????

#! /bin/sh
set +o noclobber
#
# $1 = scanner device
# $2 = friendly name
#

#
# 100,200,300,400,600
#
resolution=100
device=$1
mkdir -p ~/brscan
if [ "`which usleep 2>/dev/null `" != '' ];then
usleep 100000
else
sleep 0.1
fi
output_file=~/brscan/brscan_"`date +%Y-%m-%d-%H-%M-%S`"".pnm"
#echo "scan from $2($device) to $output_file"
scanimage --device-name "$device" --resolution $resolution> $output_file 2>/dev/null
if [ ! -s $output_file ];then
if [ "`which usleep 2>/dev/null `" != '' ];then
usleep 1000000
else
sleep 1
fi
scanimage --device-name "$device" --resolution $resolution> $output_file 2>/dev/null
fi
echo $output_file is created.
Run Code Online (Sandbox Code Playgroud)

任何帮助将不胜感激!

Jak*_*dyk 3

此问题源于这样一个事实:scanimage应该仅从扫描仪捕获单页。对于扫描多页,有一个scanadf(ADF - 自动文档进纸器)实用程序。

您提供的程序,适合使用scanadf

#! /bin/sh
set +o noclobber
#
# $1 = scanner device
# $2 = friendly name
#

#
# 100,200,300,400,600
#
resolution=100
device=$1
mkdir -p ~/brscan
if [ "`which usleep 2>/dev/null `" != '' ];then
usleep 100000
else
sleep 0.1
fi
output_file=~/brscan/brscan_"`date +%Y-%m-%d-%H-%M-%S`"".pnm"
#echo "scan from $2($device) to $output_file"
scanadf --device-name "$device" --resolution $resolution -o "$output_file"_%04d 2>/dev/null
convert -page A4 -density 100 $output_file* "$output_file"".pdf" 2>/dev/null
echo $output_file is created.
Run Code Online (Sandbox Code Playgroud)

我引入了以下更改:

  • 变成,scanimagescanadf
  • 添加的参数-o "$output_file"_%04d- 这会将扫描的页面保存到格式为“brscan_CURRENT_DATE.pnm_NUMBER”的文件中,数字从 1 到扫描的页数,
  • 添加了convert程序,该程序会将扫描的文件转换并合并为单个 PDF 文件,Brother 的脚本默认情况下不会执行此操作

convert需要在计算机上安装 ImageMagick - 一款免费的图像处理软件才能工作。此外,convert需要额外的配置才能允许对 PDF 文件进行操作,有关该主题的更多信息,请参阅https://askubuntu.com/a/1081907 。

此解决方案基于 Brother 支持页面 ( https://support.brother.com/g/s/id/linux/en/instruction_scn5.html?lang=en ) 上提供的注释。


Ram*_*man 0

您可以尝试使用脚本sane-scan-pdf,它可以将扫描的页面合并到单个输出文件中。它还包括其他选项,例如软件或硬件纠偏、裁剪、通过 Tesseract 创建可搜索的 PDF、跳过纯白色页面等。

免责声明:我是主要作者。