[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
"BitsPerComponent 1/ColorSpace/DeviceGray" 这个字符串在 PDF 文件中的位置是固定的吗?比如全部位于文件开头,或者全部位于第 N 个字节。
能给个样本吗?
1

评分人数

    • lxh623: 谢谢老朋友!技术 + 1

TOP

我也l贴一个,PowerShell 脚本
  1. $str1 = 'BitsPerComponent 1/ColorSpace/DeviceGray';
  2. $str2 = 'ImageMask true/BitsPerComponent 1       ';
  3. $arr  = [byte[]][char[]]$str2;
  4. if( ![IO.Directory]::Exists('.\new') ){ $null = md .\new; }
  5. forEach( $a In (dir *.pdf -File) ){
  6.     $Bytes = [IO.File]::ReadAllBytes($a.FullName);
  7.     $Count = $Bytes.Count - $arr.Count;
  8.     for( $i=0; $i -lt $Count; $i++ ){
  9.         $s = [Text.Encoding]::ASCii.GetString( $Bytes[$i..($i + $arr.Count - 1)] );
  10.         if( $s -eq $str1 ){
  11.             for( $j=0; $j -lt $arr.Count; $j++ ){ $Bytes[$i+$j] = $arr[$j]; }
  12.             break;
  13.         }
  14.     }
  15.     [IO.File]::WriteAllBytes( '.\new\' + $a.Name, $Bytes );
  16. }
  17. pause
复制代码
1

评分人数

TOP

返回列表