2018年10月26日 星期五

以命令提示方式,將OFFICE轉成ODF開放格式檔

LibreOfficeのコマンドライン変換機能を使ってODF、ODTを作成する。
命令提示列,無需開啟主程式,即可轉換OFFICE檔案,成 開放格式檔。



Step1:下載 ODF文件應用工具

Step2:安裝 NDC ODF Application Tools

Step3:將下面紅色部分,貼於記事本(Notepad.exe)中,並另存新檔名至桌面成ConvertOffice2ODF.cmd

@echo off
setlocal
cd /d %~dp0

rem 如附加檔為XLSX格式,則至XLSX_ODS1位置執行轉換
if %~x1 EQU .xlsx  goto XLSX_ODS
if %~x1 EQU .xls  goto  XLS_ODS
if %~x1 EQU .docx goto  DOCX_ODT
if %~x1 EQU .doc  goto  DOC_ODT
if %~x1 EQU .CSV  goto  DOCX_ODT

:non_Office
echo "本批次檔,僅供轉換WORD及EXCEL "
pause
goto end

:DOCX_ODT
start /wait soffice --headless --convert-to odt %1 --outdir %userprofile%\desktop
goto end

:DOC_ODT
start /wait soffice --headless --convert-to odt %1 --outdir %userprofile%\desktop
goto end

rem 執行轉換成ODS格式
:XLSX_ODS
start /wait soffice --headless --convert-to ods %1 --outdir %userprofile%\desktop
goto end

:XLS_ODS
start /wait soffice --headless --convert-to ods %1 --outdir %userprofile%\desktop
goto end

:end
REM 以檔案總管,開啟 桌面,並查詢剛產出之ODF、ODS檔
explorer %userprofile%\desktop



Step4:
將欲合併之檔案,Drag and drop拖放至桌面 ConvertOffice2ODF.cmd上方,即可自動合併成單一ODF/ODS檔




新增右鍵開啟(),將下列紫色部分
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\2_OpenDocument]
@="Convert Office to OpenDocument(ODF/ODS)"

[HKEY_CLASSES_ROOT\*\shell\2_OpenDocument\command]
@="d:\\ODF\\ConvertOffice2ODF.cmd \"%1\""

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\*\shell\2_OpenDocument]
@="Convert Office to OpenDocument(ODF/ODS)"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\*\shell\2_OpenDocument\command]
@="d:\\ODF\\ConvertOffice2ODF.cmd \"%1\""



相關檔案下載:

2018年1月4日 星期四

Merge Multiple PDF in one

如何快速將所有之PDF檔案,轉換成單一PDF檔?
複数のWORDのファイルをひと一つのPDFにまとめる方法

Step1:下載GhostScript合併PDF工具

Step2:解壓縮 將其bin路徑下之檔案(如:gswin32c.exe及相關dll檔),拷貝至c:\windows\system32(或PATH路徑下指定相關執行目錄)

Step3:將下面紅色部分,貼於記事本(Notepad.exe)中,並另存新檔名至桌面成MergeAllPDFinOne.cmd
setlocal
gswin32c -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -dCompatibilityLevel=1.5 -sOutputFile="%1"MergedALL.PDF %1 %2 %3 %4 %5 %6 %7 %8  %9 

Step4:
將欲合併之檔案,Drag and drop拖放至桌面 MergeAllPDFinOne.cmd上方,即可自動合併成單一PDF檔

相關查詢:
將目錄(含全數之子目錄)中 ,所有Office檔案,自動轉換成PDF檔案
檔案參數傳送超過10個以上查詢,
自訂滑鼠右鍵(將MergeAllPDFinOne.cmd,拷貝至shell:sendto)新增合併PDF成單一檔,只要一次將全數PDF選好後,按下右鍵 合併PDF成單一檔,即可快速完成所有PDF轉換成單一PDF檔

缺點:拖拉方式不方便控制PDF檔案合併順序,
備註:可以命令提示列方式 MergeAllPDFinOne.cmd Page2.pdf Page1.pdf Page3.pdf 手動指定合併順序 

2018年1月1日 星期一

Batch Convert PDF大批OFFICE檔轉PDF檔

自動將目錄中(含其子目錄)所有OFFICE檔案,自動轉換成PDF檔案?

Scenario(シナリオ):家中小孩考試前列印學校之歷屆考題,有WORD檔,也有是PDF檔,但處理列印工作時,PDF檔案列印(SumatraPdfReader)與WORD檔列印相較,個人傾向使用PDF列印。
問題來了,每年級(3個年級)有上下學期,每學期又分成3次段考,又細分國/英/數/社/自(理化/地科)等解開壓縮檔後,從100年~106年WORD檔要轉換成PDF檔就是相當可觀的轉換工作。

Office文書(複数のWordファイルに)を一括でPDFにする
Solution辦法:以Batch File大批處理Office轉換成PDF
步驟ステップ1:
下載OfficeToPDF並解壓縮至c:\windows\system32   (讓該檔變全域,即可在電腦任何目錄均可叫的到OfficeToPDF)

步驟ステップ2:
將下面程式(如紅色部分),貼至 記事本(notepad.exe) ,另存成 Doc2PDF.bat 
setlocal
cd /d %~dp0
For /R %%X in (*.doc) do OfficeToPDF "%%X" "%%~nX.pdf"


步驟ステップ3:
Doc2PDF.bat 拷貝(COPY)至歷屆試題目錄下執行,它即可自動將所有子目錄中之WORD檔轉換成PDF檔案(包含所有的子目錄,即國/英/數/社/自等目錄)

註:
1. 因OfficeToPDF不限處理DOC,故亦可轉換XLS 、PPT等,只要將步驟2  (*.doc),改成 (*.xls)等,就可轉換其他類型之OFFICE檔案成PDF檔
2.有時轉換可能會因WORD開啟卡住,建議採一次段考為範圍之目錄進行轉換(即步驟3動作,將批次檔COPY至該目錄執行)。

相關查詢:

如何將多數PDF檔合併成單一PDF檔,
(GNU GPL)HTTRack歷屆試題下載工具(輸入學校歷屆試題網址後,即可一次全數下載下來),

Office轉PDF命令提示CLI工具介紹

Apache License 2.0 (Apache)
OfficeToPDF 以命令提示列方式,將Office相關類型檔案(如:DOC、XLS、PPT等)轉換成PDF檔,或
                       可建立捷徑,將欲轉換之檔案,拖拉至OfficeToPDF捷徑上,無需開啟讓OFFICE檔案即可產出PDF檔。
步驟ステップ1:
下載並解壓縮,OfficeToPDF

步驟ステップ2:
建立OfficeToPDF至桌面,做成 捷徑。
デスクトップに置いていたショートカット

步驟ステップ3:直接將OFFICE檔,拖曳至該OfficeToPDF,即可轉換成PDF檔 (限制:一次最多僅能拖拉1個檔,否則原始檔可能會有問題)
ドラッグ・アンド・ドロップで 置いていたショートカット(OfficeToPDF)
   "OfficeToPDF"   


增設判斷機制,限制一次僅能轉換一個檔案作法:

  • 開啟記事本(Notepad.exe),將下面紫色部分程式貼上後,另存成ConvertOffice2PDF.wsh

<  job id="Convertto_pdffile"  >
 <  script language="JScript"  >
    var fso = new ActiveXObject("Scripting.FileSystemObject");
    var shell = WScript.CreateObject("Shell.Application");

    if (WScript.Arguments.length >=2) {
        WScript.Echo("Sorry! 一次僅能處理單一檔案轉換!");
      
       // Destroy and de-reference FileSystemObject
       delete fso;
       fso = null;

       WScript.Quit();
    }

      //debug print
      //WScript.Echo (WScript.Arguments(0));


   shell.ShellExecute ("c://windows//system32//OfficeToPDF.exe", WScript.Arguments(0), "", "", 1);
         
       // Destroy and de-reference FileSystemObject
       delete fso;
       fso = null;
   
     WScript.Quit();

  </ script >
</   job   >

 
  • 備註:上面附檔WSH程式,會去找轉檔程式 c:\windows\system32\OfficeToPDF.exe ,故需於步驟ステップ1請解壓縮至c:\windows\system32

相關查詢:Convert DOC to PDF from Command Line
支援轉換類型檔:Office 2016, 2013, 2010 or Office 2007 
相關應用:
大批OFFICE檔轉PDF檔

2017年12月18日 星期一

WORD合併套印,(資料來源為EXCEL)



WORD合併套印,(資料來源為EXCEL)
EXCEL資料內容如下:

公司名            產品名         產品價格

A公司            產品A1           100

A公司            產品A2           100

B公司            產品B1           100

B公司            產品A2           100

產出Word報表,如下:   (分別以每家公司為1個單位,將該家公司所有產品列印到1張報表)
公司名           產品名         產品價格

A公司           產品A1           100

A公司           產品A2           100
        分頁符號  Page Break- - - - - - - -

公司名           產品名         產品價格

B公司           產品B1           100

B公司           產品B2           100

功能變數設定如下:
{IF{MERGESEQ}=”1” “{MERGEFIELD 公司名}” “”}{SET BookMark1 {MERGEFIELD 公司名}}{IF BookMark2}<>{BookMark1}”
--------Page Break --------------
   公司名                    產品名                     產品價格
{MERGEFIELD 公司名}{MERGEFIELD 產品名}{MERGEFIELD 產品價格}
“ “
{MERGEFIELD 公司名}{MERGEFIELD 產品名}{MERGEFIELD 產品價格} “}{SET BookMark2 {MERGEFIELD 公司名}}
 
錯誤問題(If mail merge , does not work. Please check the following):無法同家公司之多筆產品名列印於同1張。
Debug除錯: (WORD功能變數及書籤功能)
Step1確認WORD文件之書籤是否定義正確?(有可能捉不
到來源資料,需再次指定主文件之來源)
Step2於主文件WORD中,按Shift+F9進入切換功能變數代碼(T),並於功能變數{MERGEFIELD 公司名}(以本件為例有3處需確認),點選滑鼠右鍵,選擇編輯功能變數(E)」。
Step3功能變數視窗」中,確認「功能變數名稱(F)」為MergeField,按確定後,
       跳出「無效的合併欄」,確認視窗右下方「資料來源之欄位(F)」,是否為公司名,因為WORD會去比對書籤BookMark2及書籤BookMark1,才可正確找出公司A與公司B之接續點,並設好分頁PageBreak

{ IF 表示式1運算元表示式2  結果為真的文字  結果為假的文字}
{IF order>=100 "感謝您" "訂購數量,最小以100為單位為基準"}

欄位一為1者,印出Y,另一邊呈現剛好相反
{IF {Mergefield 欄位一} =1  "Y"  "N"} {IF {Mergefield 欄位一} =1  "N" "Y"}

相關快速鍵:
ALT+F9 -->切換檢視功能變數代碼和功能變數代碼結果。
Ctrl+F9-->於微軟OFFICE文件,插入功能變數(Field Codes)  {  }
Ctrl+Enter-->插入分頁符號(Page Break) 

資料來源:

 相關查詢:

2017年11月5日 星期日

SONY Xperia (Android7) 相機錯誤訊息



SONY Xperia (Android7) 相機錯誤訊息
The camera may be in use by another application,
重新開機,無效。

解決辦法:
步驟1: (建議先備份相片資料)
應用程式|相機|儲存空間|清除資料

步驟2
以上,如仍無效:
檢查一下SD卡接觸(拔出,再接回去)

 參考資訊:Which Apps using your camera?
應用程式|設定(點選齒輪圖示)|應用程式權限|相機|(如:點選右上方圖示 ...  系統顯示   人臉辨識 [取消相關系統佔用相機之授權])。