

AWS Mainframe Modernization Service （受管執行期環境體驗） 不再開放給新客戶使用。對於與 AWS Mainframe Modernization Service （受管執行期環境體驗） 類似的功能，探索 AWS Mainframe Modernization Service （自我管理體驗）。現有客戶可以繼續正常使用該服務。如需詳細資訊，請參閱[AWS 大型主機現代化可用性變更](https://docs.aws.amazon.com/m2/latest/userguide/mainframe-modernization-availability-change.html)。

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# TXT2PDF 批次公用程式
<a name="txt2pdf"></a>

TXT2PDF 是一種大型主機公用程式程式，通常用於將文字檔案轉換為 PDF 檔案。此公用程式針對 TXT2PDF (z/OS 免費軟體） 使用相同的原始程式碼。我們已將其修改為在 AWS Mainframe Modernization Rocket Software （先前稱為 Micro Focus) 執行時間環境中執行。

**Topics**
+ [支援平台](#txt2pdf-platforms)
+ [為 AWS 大型主機現代化受管設定 TXT2PDF](#txt2pdf-configure-managed)
+ [在 Amazon EC22 上為大型主機現代化執行時間設定 TXT2PDF （包括 WorkSpaces 應用程式） AWS](#txt2pdf-configure-customer-infra)
+ [範例 JCL](#txt2pdf-jcl)
+ [修改](#txt2pdf-mods)
+ [參考](#txt2pdf-ref)

## 支援平台
<a name="txt2pdf-platforms"></a>

您可以在下列任何平台上使用 TXT2PDF：
+ AWS Mainframe Modernization Rocket 軟體受管
+ Rocket 軟體執行期 （在 Amazon EC2 上）
+ Rocket Enterprise Developer (ED) 和 Rocket Enterprise Server (ES) 產品的所有變體。

## 為 AWS 大型主機現代化受管設定 TXT2PDF
<a name="txt2pdf-configure-managed"></a>

如果您遷移的應用程式在 AWS Mainframe Modernization Managed 上執行，請設定 TXT2PDF，如下所示。
+ 建立名為 的 REXX EXEC 程式庫`AWS.M2.REXX.EXEC`。下載這些 [REXX 模組](https://drm0z31ua8gi7.cloudfront.net/utilities/mf/TXT2PDF/rexx/TXT2PDF_rexx.zip)並將其複製到程式庫。
  + `TXT2PDF.rex` - TXT2PDF z/OS 免費軟體 （已修改）
  + `TXT2PDFD.rex` - TXT2PDF z/OS 免費軟體 （未修改）
  + `TXT2PDFX.rex` - TXT2PDF z/OS 免費軟體 （已修改）
  + `M2GETOS.rex` - 檢查作業系統類型 (Windows 或 Linux)

若要測試您的組態，請參閱 [範例 JCL](#txt2pdf-jcl)。

## 在 Amazon EC22 上為大型主機現代化執行時間設定 TXT2PDF （包括 WorkSpaces 應用程式） AWS
<a name="txt2pdf-configure-customer-infra"></a>

如果您遷移的應用程式在 Amazon EC2 上的 AWS Mainframe Modernization 執行時間上執行，請設定 TXT2PDF，如下所示。

1. 將 Rocket Software 環境變數`MFREXX_CHARSET`設定為適當的值，例如 ASCII 資料的「`A`」。
**重要**  
輸入錯誤的值可能會導致資料轉換問題 （從 EBCDIC 到 ASCII)，導致產生的 PDF 無法讀取或無法操作。我們建議設定 `MFREXX_CHARSET`以符合 `MF_CHARSET`。

1. 變更 [Micro Focus JES 程式路徑](https://www.microfocus.com/documentation/enterprise-developer/ed80/ED-Eclipse/GUID-BC8A1796-9EDE-48EB-8363-31C9BDE7F96B.html)，以包含批次公用程式的二進位位置。如果您需要指定多個路徑，請使用冒號 (`:`) 來分隔 Linux 上的路徑和 Windows 上的分號 (`;`)。
   + Linux：`/opt/aws/m2/microfocus/utilities/64bit`
   + Windows (32 位元）： `C:\AWS\M2\MicroFocus\Utilities\32bit`
   + Windows (64 位元）： `C:\AWS\M2\MicroFocus\Utilities\64bit`

1. 建立名為 的 REXX EXEC 程式庫`AWS.M2.REXX.EXEC``。下載這些 [REXX 模組](https://drm0z31ua8gi7.cloudfront.net/utilities/mf/TXT2PDF/rexx/TXT2PDF_rexx.zip)並將其複製到程式庫。
   + `TXT2PDF.rex` - TXT2PDF z/OS 免費軟體 （已修改）
   + `TXT2PDFD.rex` - TXT2PDF z/OS 免費軟體 （未修改）
   + `TXT2PDFX.rex` - TXT2PDF z/OS 免費軟體 （已修改）
   + `M2GETOS.rex` - 檢查作業系統類型 (Windows 或 Linux)

若要測試您的組態，請參閱 [範例 JCL](#txt2pdf-jcl)。

## 範例 JCL
<a name="txt2pdf-jcl"></a>

若要測試安裝，您可以使用下列其中一個範例 JCL 檔案。

**TXT2PDF1.jcl**

此範例 JCL 檔案使用 DD 名稱進行 TXT2PDF 轉換。

```
//TXT2PDF1 JOB 'TXT2PDF1',CLASS=A,MSGCLASS=X,TIME=1440
//*
//* Copyright Amazon.com, Inc. or its affiliates.* 
//* All Rights Reserved.* 
//*
//*-------------------------------------------------------------------**
//* PRE DELETE*
//*-------------------------------------------------------------------**
//*
//PREDEL  EXEC PGM=IEFBR14
//* 
//DD01     DD DSN=AWS.M2.TXT2PDF1.PDF.VB,                      
//            DISP=(MOD,DELETE,DELETE)
//*
//DD02     DD DSN=AWS.M2.TXT2PDF1.PDF,                       
//            DISP=(MOD,DELETE,DELETE)
//* 
//*-------------------------------------------------------------------**
//* CALL TXT2PDF TO CONVERT FROM TEXT TO PDF (VB)*
//*-------------------------------------------------------------------**
//*
//STEP01 EXEC PGM=IKJEFT1B
//*
//SYSEXEC  DD DISP=SHR,DSN=AWS.M2.REXX.EXEC
//*
//INDD     DD *
1THIS IS THE FIRST LINE ON THE PAGE 1
0THIS IS THE THIRD LINE ON THE PAGE 1
-THIS IS THE   6TH LINE ON THE PAGE 1
THIS IS THE   7TH LINE ON THE PAGE 1
+____________________________________ - OVERSTRIKE 7TH LINE          
1THIS IS THE FIRST LINE ON THE PAGE 2
0THIS IS THE THIRD LINE ON THE PAGE 2
-THIS IS THE   6TH LINE ON THE PAGE 2 
THIS IS THE   7TH LINE ON THE PAGE 2
+____________________________________ - OVERSTRIKE 7TH LINE                 
/*
//*
//OUTDD    DD DSN=AWS.M2.TXT2PDF1.PDF.VB,
//            DISP=(NEW,CATLG,DELETE),
//            DCB=(LRECL=256,DSORG=PS,RECFM=VB,BLKSIZE=0)
//*
//SYSTSPRT DD SYSOUT=*
//SYSTSIN  DD DDNAME=SYSIN
//*
//SYSIN    DD *
%TXT2PDF BROWSE Y IN DD:INDD +
OUT DD:OUTDD +
CC YES
/*
//*
//*-------------------------------------------------------------------**
//* CONVERT PDF (VB) TO PDF (LSEQ - BYTE STREAM)*
//*-------------------------------------------------------------------**
//* 
//STEP02 EXEC PGM=VB2LSEQ
//*
//INFILE   DD DSN=AWS.M2.TXT2PDF1.PDF.VB,DISP=SHR             
//*
//OUTFILE  DD DSN=AWS.M2.TXT2PDF1.PDF,                      
//            DISP=(NEW,CATLG,DELETE),
//            DCB=(LRECL=256,DSORG=PS,RECFM=LSEQ,BLKSIZE=0)
//*
//SYSOUT   DD SYSOUT=*
//*
//
```

**TXT2PDF2.jcl**

此範例 JCL 使用 DSN 名稱進行 TXT2PDF 轉換。

```
//TXT2PDF2 JOB 'TXT2PDF2',CLASS=A,MSGCLASS=X,TIME=1440
//*
//* Copyright Amazon.com, Inc. or its affiliates.* 
//* All Rights Reserved.* 
//*
//*-------------------------------------------------------------------**
//* PRE DELETE*
//*-------------------------------------------------------------------**
//*
//PREDEL  EXEC PGM=IEFBR14
//* 
//DD01     DD DSN=AWS.M2.TXT2PDF2.PDF.VB,                      
//            DISP=(MOD,DELETE,DELETE)
//*
//DD02     DD DSN=AWS.M2.TXT2PDF2.PDF,                       
//            DISP=(MOD,DELETE,DELETE)
//* 
//*-------------------------------------------------------------------**
//* CALL TXT2PDF TO CONVERT FROM TEXT TO PDF (VB)*
//*-------------------------------------------------------------------**
//* 
//STEP01 EXEC PGM=IKJEFT1B
//*
//SYSEXEC  DD DISP=SHR,DSN=AWS.M2.REXX.EXEC
//*
//INDD     DD *
1THIS IS THE FIRST LINE ON THE PAGE 1
0THIS IS THE THIRD LINE ON THE PAGE 1
-THIS IS THE   6TH LINE ON THE PAGE 1
THIS IS THE   7TH LINE ON THE PAGE 1
+____________________________________ - OVERSTRIKE 7TH LINE          
1THIS IS THE FIRST LINE ON THE PAGE 2
0THIS IS THE THIRD LINE ON THE PAGE 2
-THIS IS THE   6TH LINE ON THE PAGE 2 
THIS IS THE   7TH LINE ON THE PAGE 2
+____________________________________ - OVERSTRIKE 7TH LINE                 
/*
//*
//SYSTSPRT DD SYSOUT=*
//SYSTSIN  DD DDNAME=SYSIN
//*
//SYSIN    DD *
%TXT2PDF BROWSE Y IN DD:INDD +
OUT 'AWS.M2.TXT2PDF2.PDF.VB' +
CC YES
/*
//*
//*-------------------------------------------------------------------**
//* CONVERT PDF (VB) TO PDF (LSEQ - BYTE STREAM)*
//*-------------------------------------------------------------------**
//*
//STEP02 EXEC PGM=VB2LSEQ
//*
//INFILE   DD DSN=AWS.M2.TXT2PDF2.PDF.VB,DISP=SHR             
//*
//OUTFILE  DD DSN=AWS.M2.TXT2PDF2.PDF,                      
//            DISP=(NEW,CATLG,DELETE),
//            DCB=(LRECL=256,DSORG=PS,RECFM=LSEQ,BLKSIZE=0)
//*
//SYSOUT   DD SYSOUT=*
//*
//
```

## 修改
<a name="txt2pdf-mods"></a>

為了讓 TXT2PDF 程式在 AWS Mainframe Modernization Rocket Software 執行期環境上執行，我們進行了下列變更：
+ 變更原始程式碼，以確保與 Rocket Software REXX 執行時間相容
+ 變更以確保程式可以在 Windows 和 Linux 作業系統上執行
+ 修改以支援 EBCDIC 和 ASCII 執行時間

## 參考
<a name="txt2pdf-ref"></a>

TXT2PDF 參考和原始程式碼：
+ [文字轉 PDF 轉換器](https://homerow.net/rexx/txt2pdf/)
+ [z/OS Freeware TCP/IP 和郵件工具](http://www.lbdsoftware.com/tcpip.html)
+ [TXT2PDF 使用者指南](http://www.lbdsoftware.com/TXT2PDF-User-Guide.pdf)