Converting a dfnt to tt or otf

I have a dfnt (skia) that I can see and use all the faces in the family in some apps but not in others. I was going to convert to otf using fontxchange but everytime I export only Skia Regular shows as an OTF font. The other family members don't. Is it possible to convert so the entire family becomes an OTF? Thx.

There are several font converters out on the market whch can do that. But because I doubt that it would be legaly according the end user agreement, I will not put names of such programs on the table.
First you should check, if you can legaly convert such fonts.

Similar Messages

  • Converting the script and smartforms to OTF and RDI format.

    How to convert the script and smartforms to OTF and RDI format. Please suggest all possible ways.

    Please don't cross-post or duplicate-post.
    It increases the chances that both threads are deleted faster than what it increases the chances of getting "double-good" answers...
    I deleted the other thread.
    Thanks,
    Julius

  • Convert an already created pdf to otf

    i made an report that takes some pdf from sapscript and takes the otf's and send them as email attachement.
    Now i want to incude one more pdf to the same email that is already created and i store it to my fileserver . How can i do this ?
    REPORT  YDP_SEND_ALL_DOCS_EMAIL.
    DATA: ITCPO LIKE ITCPO,
          TAB_LINES LIKE SY-TABIX.
    Variables for EMAIL functionality
    DATA: MAILDATA   LIKE SODOCCHGI1.
    DATA: MAILPACK   LIKE SOPCKLSTI1 OCCURS 2 WITH HEADER LINE.
    DATA: MAILHEAD   LIKE SOLISTI1 OCCURS 1 WITH HEADER LINE.
    DATA: MAILBIN    LIKE SOLISTI1 OCCURS 10 WITH HEADER LINE.
    DATA: MAILTXT    LIKE SOLISTI1 OCCURS 10 WITH HEADER LINE.
    DATA: MAILREC    LIKE SOMLREC90 OCCURS 0  WITH HEADER LINE.
    DATA: SOLISTI1   LIKE SOLISTI1 OCCURS 0 WITH HEADER LINE.
    TABLES: LIPS,
            LIKP,
            LFA1,
            KNA1,
            ADR6,
            VBKD,
            VBPA,
            VBAK,
            VBRK,
            VBRP,
            MARA,
            T005T,
            VBFA.
    DATA : BEGIN OF ITAB OCCURS 0,
            VBELN       LIKE VBRK-VBELN,  "billing doc
            NAME1       LIKE KNA1-NAME1,  "Customer name
            SMTP_ADDR      LIKE ADR6-SMTP_ADDR,
            END OF ITAB.
    DATA: MY_OPTIONS TYPE ITCPO.
    SELECTION-SCREEN BEGIN OF BLOCK B0 WITH FRAME TITLE TEXT-001.
    PARAMETERS: SVBELN TYPE VBRK-VBELN.
    PARAMETERS: SNAME TYPE KNA1-NAME1.
    PARAMETERS: S_EMAIL TYPE ADR6-SMTP_ADDR.
    SELECTION-SCREEN SKIP 2.
    PARAMETERS: SUBJ(30) TYPE C.
    SELECTION-SCREEN SKIP 2.
    PARAMETERS: LINE1 LIKE MAILTXT-LINE.
    PARAMETERS: LINE2 LIKE MAILTXT-LINE.
    PARAMETERS: LINE3 LIKE MAILTXT-LINE.
    PARAMETERS: LINE4 LIKE MAILTXT-LINE.
    PARAMETERS: LINE5 LIKE MAILTXT-LINE.
    PARAMETERS: LINE6 LIKE MAILTXT-LINE DEFAULT 'The following PDF are produced by SAP and are digitally signed .'.
    SELECTION-SCREEN END OF BLOCK B0.
    SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-002.
    PARAMETERS: YHSD AS CHECKBOX DEFAULT 'X'.
    PARAMETERS: ZHAG AS CHECKBOX DEFAULT 'X'.
    PARAMETERS: ZPHL AS CHECKBOX DEFAULT 'X'.
    SELECTION-SCREEN END OF BLOCK B1.
    AT SELECTION-SCREEN OUTPUT.
      LOOP AT SCREEN.
        IF SCREEN-NAME = 'S_EMAIL'.
          SCREEN-INPUT = 0.
          SCREEN-INTENSIFIED = 0.
          MODIFY SCREEN.
          EXIT.
        ENDIF.
      ENDLOOP.
      LOOP AT SCREEN.
        IF SCREEN-NAME = 'SNAME'.
          SCREEN-INPUT = 0.
          SCREEN-INTENSIFIED = 0.
          MODIFY SCREEN.
          EXIT.
        ENDIF.
      ENDLOOP.
    AT SELECTION-SCREEN.
      SELECT SINGLE * FROM VBRK WHERE VBELN = SVBELN.
      IF SY-SUBRC = 0.
        SELECT SINGLE * FROM KNA1 WHERE KUNNR = VBRK-KUNRG.
        SNAME = KNA1-NAME1.
        SELECT SINGLE * FROM ADR6 WHERE ADDRNUMBER = KNA1-ADRNR.
        IF SY-SUBRC = 0 .
          S_EMAIL = ADR6-SMTP_ADDR.
        ELSE.
          S_EMAIL = 'No Email Address !!!!'.
        ENDIF.
      ELSE.
        S_EMAIL = 'No Email Address !!!!'.
      ENDIF.
    START-OF-SELECTION.
      PERFORM SEND_FORM_VIA_EMAIL.
    *&      Form  WRITE_FORM
          text
         -->P_WIN      text
         -->P_TYPE     text
         -->P_EL       text
         -->P_FUN      text
    FORM WRITE_FORM USING P_WIN P_TYPE P_EL P_FUN.
      CALL FUNCTION 'WRITE_FORM'
        EXPORTING
          ELEMENT                  = P_EL
          FUNCTION                 = P_FUN
          TYPE                     = P_TYPE
          WINDOW                   = P_WIN
       IMPORTING
         PENDING_LINES            =
       EXCEPTIONS
          ELEMENT                  = 1
          FUNCTION                 = 2
          TYPE                     = 3
          UNOPENED                 = 4
          UNSTARTED                = 5
          WINDOW                   = 6
          BAD_PAGEFORMAT_FOR_PRINT = 7
          SPOOL_ERROR              = 8
          CODEPAGE                 = 9
          OTHERS                   = 10.
      IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    ENDFORM.                    "WRITE_FORM
    *&      Form  CLOSE_FORM
          text
    FORM CLOSE_FORM.
      CALL FUNCTION 'CLOSE_FORM'
         IMPORTING
              RESULT                   = ITCPP
              RDI_RESULT               =
          TABLES
               OTFDATA                  = OTF
           EXCEPTIONS
                UNOPENED                 = 1
                BAD_PAGEFORMAT_FOR_PRINT = 2
                SEND_ERROR               = 3
                OTHERS                   = 4.
    ENDFORM.                    " CLOSE_LAYOUT_DSS
    *&      Form  GET_DATA
          text
    FORM GET_DATA.
      DATA: BEGIN OF OTF OCCURS 0.
              INCLUDE STRUCTURE ITCOO .
      DATA: END OF OTF.
      DATA: ITCPO LIKE ITCPO.
      DATA: ITCPP LIKE ITCPP.
      CLEAR ITCPO.
      ITCPO-TDGETOTF = 'X'.
      PERFORM COLLECT_DATA(YHAL_SHIPPING_DETAILS) USING SVBELN."VBRK-VBELN.
      CALL FUNCTION 'OPEN_FORM'
        EXPORTING
          FORM     = 'YHAL_SHIP_DETAIL'
          LANGUAGE = SY-LANGU
          OPTIONS  = ITCPO
          DIALOG   = ' '
        EXCEPTIONS
          OTHERS   = 1.
      PERFORM DISPLAY_DATA(YHAL_SHIPPING_DETAILS) USING SVBELN." VBRK-VBELN.
    Close up Form and get OTF code
      CALL FUNCTION 'END_FORM'
        EXCEPTIONS
          ERROR_MESSAGE = 01
          OTHERS        = 02.
      MOVE-CORRESPONDING ITCPO TO ITCPP.
      CALL FUNCTION 'CLOSE_FORM'
        IMPORTING
          RESULT  = ITCPP
        TABLES
          OTFDATA = OTF
        EXCEPTIONS
          OTHERS  = 1.
    Move OTF code to structure SOLI form email
      CLEAR SOLISTI1. REFRESH SOLISTI1.
      LOOP AT OTF.
        SOLISTI1-LINE = OTF.
        APPEND SOLISTI1.
      ENDLOOP.
    ENDFORM.                    "GET_DATA
    *&      Form  GET_DATA1
          text
    FORM GET_DATA1.
      DATA: BEGIN OF OTF OCCURS 0.
              INCLUDE STRUCTURE ITCOO .
      DATA: END OF OTF.
      DATA: ITCPO LIKE ITCPO.
      DATA: ITCPP LIKE ITCPP.
      CLEAR OTF.
      CLEAR ITCPO.
      ITCPO-TDGETOTF = 'X'.
      PERFORM COLLECT_DATA(Z111_PACKING_LIST) USING SVBELN."VBRK-VBELN.
      CALL FUNCTION 'OPEN_FORM'
        EXPORTING
          FORM     = 'Z1111_PACKING'
          LANGUAGE = SY-LANGU
          OPTIONS  = ITCPO
          DIALOG   = ' '
        EXCEPTIONS
          OTHERS   = 1.
      PERFORM DISPLAY_DATA(Z111_PACKING_LIST). "USING SVBELN." VBRK-VBELN.
    Close up Form and get OTF code
      CALL FUNCTION 'END_FORM'
        EXCEPTIONS
          ERROR_MESSAGE = 01
          OTHERS        = 02.
      MOVE-CORRESPONDING ITCPO TO ITCPP.
      CALL FUNCTION 'CLOSE_FORM'
        IMPORTING
          RESULT  = ITCPP
        TABLES
          OTFDATA = OTF
        EXCEPTIONS
          OTHERS  = 1.
    Move OTF code to structure SOLI form email
      CLEAR SOLISTI1. REFRESH SOLISTI1.
      LOOP AT OTF.
        SOLISTI1-LINE = OTF.
        APPEND SOLISTI1.
      ENDLOOP.
    ENDFORM.                                                    "GET_DATA1
    *&      Form  GET_DATA2
          text
    FORM GET_DATA2.
      DATA: BEGIN OF OTF OCCURS 0.
              INCLUDE STRUCTURE ITCOO .
      DATA: END OF OTF.
      DATA: ITCPO LIKE ITCPO.
      DATA: ITCPP LIKE ITCPP.
      CLEAR OTF.
      CLEAR ITCPO.
      ITCPO-TDGETOTF = 'X'.
      PERFORM COLLECT_DATA(Z111_AGENCY_NOTE) USING SVBELN."VBRK-VBELN.
      CALL FUNCTION 'OPEN_FORM'
        EXPORTING
          FORM     = 'Z1111_AGENCY'
          LANGUAGE = SY-LANGU
          OPTIONS  = ITCPO
          DIALOG   = ' '
        EXCEPTIONS
          OTHERS   = 1.
      PERFORM DISPLAY_DATA(Z111_AGENCY_NOTE) USING SVBELN." VBRK-VBELN.
    Close up Form and get OTF code
      CALL FUNCTION 'END_FORM'
        EXCEPTIONS
          ERROR_MESSAGE = 01
          OTHERS        = 02.
      MOVE-CORRESPONDING ITCPO TO ITCPP.
      CALL FUNCTION 'CLOSE_FORM'
        IMPORTING
          RESULT  = ITCPP
        TABLES
          OTFDATA = OTF
        EXCEPTIONS
          OTHERS  = 1.
    Move OTF code to structure SOLI form email
      CLEAR SOLISTI1. REFRESH SOLISTI1.
      LOOP AT OTF.
        SOLISTI1-LINE = OTF.
        APPEND SOLISTI1.
      ENDLOOP.
    ENDFORM.                                                    "GET_DATA2
          FORM  SEND_FORM_VIA_EMAIL                                      *
    FORM  SEND_FORM_VIA_EMAIL.
      CLEAR:    MAILDATA, MAILTXT, MAILBIN, MAILPACK, MAILHEAD, MAILREC.
      REFRESH:  MAILTXT, MAILBIN, MAILPACK, MAILHEAD, MAILREC.
    Creation of the document to be sent File Name
      MAILDATA-OBJ_NAME = 'TEST'.
    Mail Subject
      MAILDATA-OBJ_DESCR = SUBJ ."'EGGRAFA BIBLOY'.
    Mail Contents
      MAILTXT-LINE = LINE1.
      APPEND MAILTXT.
      MAILTXT-LINE = LINE2.
      APPEND MAILTXT.
      MAILTXT-LINE = LINE3.
      APPEND MAILTXT.
      MAILTXT-LINE = LINE4.
      APPEND MAILTXT.
      MAILTXT-LINE = LINE5.
      APPEND MAILTXT.
      MAILTXT-LINE = LINE6.
      APPEND MAILTXT.
    Prepare Packing List
      PERFORM PREPARE_PACKING_LIST.
    Set recipient - email address here!!!
      MAILREC-RECEIVER = '[email protected]'.
      MAILREC-REC_TYPE  = 'U'.
      APPEND MAILREC.
    Sending the document
      CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
        EXPORTING
          DOCUMENT_DATA              = MAILDATA
          PUT_IN_OUTBOX              = ' '
        TABLES
          PACKING_LIST               = MAILPACK
          OBJECT_HEADER              = MAILHEAD
          CONTENTS_BIN               = MAILBIN
          CONTENTS_TXT               = MAILTXT
          RECEIVERS                  = MAILREC
        EXCEPTIONS
          TOO_MANY_RECEIVERS         = 1
          DOCUMENT_NOT_SENT          = 2
          OPERATION_NO_AUTHORIZATION = 4
          OTHERS                     = 99.
      COMMIT WORK.
    ENDFORM.                    "SEND_FORM_VIA_EMAIL
         Form  PREPARE_PACKING_LIST
    FORM PREPARE_PACKING_LIST.
      CLEAR:    MAILPACK, MAILBIN, MAILHEAD.
      REFRESH:  MAILPACK, MAILBIN, MAILHEAD.
      DESCRIBE TABLE MAILTXT LINES TAB_LINES.
      READ TABLE MAILTXT INDEX TAB_LINES.
      MAILDATA-DOC_SIZE = ( TAB_LINES - 1 ) * 255 + STRLEN( MAILTXT ).
    Creation of the entry for the compressed document
      CLEAR MAILPACK-TRANSF_BIN.
      MAILPACK-HEAD_START = 1.
      MAILPACK-HEAD_NUM = 0.
      MAILPACK-BODY_START = 1.
      MAILPACK-BODY_NUM = TAB_LINES.
      MAILPACK-DOC_TYPE = 'RAW'.
      APPEND MAILPACK.
    Creation of the document attachment
    This form gets the OTF code from the SAPscript form.
    If you already have your OTF code, I believe that you may
    be able to skip this form.  just do the following code, looping thru
    your SOLISTI1 and updating MAILBIN.
      IF YHSD = 'X' .
        PERFORM GET_OTF_CODE.      "----
        LOOP AT SOLISTI1.
          MOVE-CORRESPONDING SOLISTI1 TO MAILBIN.
          APPEND MAILBIN.
        ENDLOOP.
        DESCRIBE TABLE MAILBIN LINES TAB_LINES.
        MAILHEAD = 'TEST.OTF'.
        APPEND MAILHEAD.
      ENDIF.
    Creation of the entry for the compressed attachment
    MAILPACK-TRANSF_BIN = 'X'.
    MAILPACK-HEAD_START = 1.
    MAILPACK-HEAD_NUM = 1.
    MAILPACK-BODY_START = 1.
    MAILPACK-BODY_NUM = TAB_LINES.
    MAILPACK-DOC_TYPE = 'OTF'.
    MAILPACK-OBJ_NAME = 'TEST01'.
    MAILPACK-OBJ_DESCR = 'Subject01'.
    MAILPACK-DOC_SIZE = TAB_LINES * 255.
    APPEND MAILPACK.
      IF ZHAG = 'X'.
        PERFORM GET_OTF_CODE1.      "----
        LOOP AT SOLISTI1.
          MOVE-CORRESPONDING SOLISTI1 TO MAILBIN.
          APPEND MAILBIN.
        ENDLOOP.
        DESCRIBE TABLE MAILBIN LINES TAB_LINES.
        MAILHEAD = 'TEST1.OTF'.
        APPEND MAILHEAD.
      ENDIF.
    Creation of the entry for the compressed attachment
    MAILPACK-TRANSF_BIN = 'X'.
    MAILPACK-HEAD_START = 1.
    MAILPACK-HEAD_NUM = 1.
    MAILPACK-BODY_START = 1.
    MAILPACK-BODY_NUM = TAB_LINES.
    MAILPACK-DOC_TYPE = 'OTF'.
    MAILPACK-OBJ_NAME = 'TEST02'.
    MAILPACK-OBJ_DESCR = 'Subject02'.
    MAILPACK-DOC_SIZE = TAB_LINES * 255.
    APPEND MAILPACK.
      IF ZPHL = 'X'.
        PERFORM GET_OTF_CODE2.      "----
        LOOP AT SOLISTI1.
          MOVE-CORRESPONDING SOLISTI1 TO MAILBIN.
          APPEND MAILBIN.
        ENDLOOP.
        DESCRIBE TABLE MAILBIN LINES TAB_LINES.
        MAILHEAD = 'TEST2.OTF'.
        APPEND MAILHEAD.
      ENDIF.
    Creation of the entry for the compressed attachment
      MAILPACK-TRANSF_BIN = 'X'.
      MAILPACK-HEAD_START = 1.
      MAILPACK-HEAD_NUM = 1.
      MAILPACK-BODY_START = 1.
      MAILPACK-BODY_NUM = TAB_LINES.
      MAILPACK-DOC_TYPE = 'OTF'.
      MAILPACK-OBJ_NAME = 'TEST03'.
      MAILPACK-OBJ_DESCR = 'Ship.details-Agency.report-Packing.list'.
      MAILPACK-DOC_SIZE = TAB_LINES * 255.
      APPEND MAILPACK.
    ENDFORM.                    "PREPARE_PACKING_LIST
         Form  GET_OTF_CODE
    FORM  GET_OTF_CODE.
      PERFORM GET_DATA.
    ENDFORM.                    "GET_OTF_CODE
         Form  GET_OTF_CODE1
    FORM  GET_OTF_CODE1.
      PERFORM GET_DATA1.
    ENDFORM.                    "GET_OTF_CODE1
         Form  GET_OTF_CODE2
    FORM  GET_OTF_CODE2.
      PERFORM GET_DATA2.
    ENDFORM.                    "GET_OTF_CODE2
    END-OF-SELECTION.

    Hi Dimath,
    Try the following FM:
    CONVERT_OTF Convert SAP documents (SAPScript) to other types.
    Example:
    CALL FUNCTION "CONVERT_OTF"
           EXPORTING    FORMAT                = "PDF"
           IMPORTING    BIN_FILESIZE          = FILE_LEN
           TABLES       OTF                   = OTFDATA
                        LINES                 = PDFDATA
           EXCEPTIONS   ERR_MAX_LINEWIDTH     = 1                  
                        ERR_FORMAT            = 2
                        ERR_CONV_NOT_POSSIBLE = 3
                        OTHERS                = 4.
    Hope this helps.
    Reward if helpful.
    Regards,
    Sipra

  • Converting raw data from memory to OTF format

    hi all,
         i have a requirment where i need to submit a report and move the corresponding output to memory get the same back in OTF format and export it in an RFC.  i tried using different function modules but could not find the exact where i can convert from memory to OTF format or directly at the time of submit can store it in OTF format.
          tried converting list to asci but could not get the same report output,
    thanks,
    raju,

    Hi krishnam,
    You can try this function module
    SX_OBJECT_CONVERT_OTF_RAW
    Regards
    Sumit Bhutani

  • Convert OTF to PDF problem

    Hi everyone,
    I am currently testing a report in our acceptance box. The report is converting a sapscript form output to OTF. Then the OTF result will be converted to PDF that will be sent to external email address as attachment. However, when I checked the PDF result in acceptance box, it is not of ASCII type. In development box, the PDF result is ASCII. Does this mean that the OTF, PDF settings in the 2 SAP boxes are not the same.
    As you can see, this is the converted PDF in dev box. This is working okay.
    --> %PDF-1.3##%aaDO##2 0 obj##<<##/Length 3 0 R##/Filter /ASCIIHexDecode##/Length1 5866##/Length2 29788##/Length3 544##>>##stream##25215
    But in acceptance box, the codes are different. This one is not working.
    --> %PDF-1.3##%aaDO##2 0 obj##<<##/Type /FontDescriptor##/Ascent 720##/CapHeight 660##/Descent -270##/Flags 32##/FontBBox [-177 -269 112
    Does this have to do with the OTF, PDF settings defined in the systems? Where should we check the settings of these 2 formats?
    Thanks!

    Hi,
    Try to use function module SX_OBJECT_CONVERT_OTF_PDF as shown below:
    We had a similar requirement and we need to send email with attachment as the output of SMARTFORM in to PDF.
    IF lv_kschl EQ 'Z300'.
    *Call function for sales order or return order
        CALL FUNCTION lf_fm_name
          EXPORTING
            archive_index        = toa_dara
            archive_parameters   = arc_params
            control_parameters   = ls_control_param
            mail_recipient       = ls_recipient
            mail_sender          = ls_sender
            output_options       = ls_composer_param
            user_settings        = ' '
            znast                = nast
            zvbdka               = vbdka
            zaddres              = addr_key
          IMPORTING
            document_output_info = document_output_info
            job_output_info      = job_output_info
            job_output_options   = job_output_options
          TABLES
            ztvbdpa              = tvbdpa
          EXCEPTIONS
            formatting_error     = 1
            internal_error       = 2
            send_error           = 3
            user_canceled        = 4
            OTHERS               = 5.
        IF sy-subrc <> 0.
          retcode = sy-subrc.
          PERFORM protocol_update.
    * get SmartForm protocoll and store it in the NAST protocoll
          PERFORM add_smfrm_prot.
        ENDIF.
       IF ls_control_param-getotf = 'X'.
        zzotfdata[] = job_output_info-otfdata.
        LOOP AT zzotfdata INTO wa_otfdata.
          CONCATENATE wa_otfdata-tdprintcom wa_otfdata-tdprintpar INTO wa_pdf.
          APPEND wa_pdf TO i_context_txt.
        ENDLOOP.
        CALL FUNCTION 'SX_OBJECT_CONVERT_OTF_PDF'
          EXPORTING
            format_src            = 'OTF'
            format_dst            = 'PDF'
           devtype               =  'PRINTER'
          CHANGING
            transfer_bin          = wa_tranfer_bin
            content_txt           = i_context_txt
            content_bin           = i_content_bin
            objhead               = i_objhead
            len                   = v_len_in
    *    EXCEPTIONS
    *      ERR_CONV_FAILED       = 1
    *      OTHERS                = 2
        IF sy-subrc <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
        ELSE.
          v_size = v_len_in.
          EXPORT i_content_bin[] TO MEMORY ID 'ABCD'.
        ENDIF.
      ENDIF.
    KR Jaideep,

  • How to convert an internal table to a PDF

    Hello Experts,
    Is there a way that an internal table can be converted into a PDF file?
    The itab is:
    data: i_data(100) type c occurs 0 with header line.
    Thanks.

    Hai,
    first convert ur internal table data to  OTF.by usinf thid Function Module
    data: t_otf LIKE itcoo OCCURS 100 WITH HEADER LINE,
    t_pdf LIKE tline OCCURS 100 WITH HEADER LINE*.
    CALL FUNCTION 'CONVERT_OTF'
      EXPORTING
       format                      = 'PDF'
      MAX_LINEWIDTH               = 132
      ARCHIVE_INDEX               = ' '
      COPYNUMBER                  = 0
      ASCII_BIDI_VIS2LOG          = ' '
      PDF_DELETE_OTFTAB           = ' '
    IMPORTING
       BIN_FILESIZE                = w_size
      BIN_FILE                    =
      TABLES
        otf                         = t_otf
        lines                       = t_pdf
    EXCEPTIONS
       ERR_MAX_LINEWIDTH           = 1
       ERR_FORMAT                  = 2
       ERR_CONV_NOT_POSSIBLE       = 3
       ERR_BAD_OTF                 = 4
       OTHERS                      = 5
      IF sy-subrc <> 0.
       RAISE error.  " oops
      ENDIF.
    and then use gui_download  function module.
    CALL FUNCTION 'GUI_DOWNLOAD'
      EXPORTING
       BIN_FILESIZE                  =  w_size
        filename                      =  'C:\Documents and Settings\adc\Desktop\pdf123.pdf'
       FILETYPE                      = 'BIN'
      APPEND                        = ' '
      WRITE_FIELD_SEPARATOR         = 'X'
      HEADER                        = '00'
      TRUNC_TRAILING_BLANKS         = ' '
      WRITE_LF                      = 'X'
      COL_SELECT                    = 'X'
      COL_SELECT_MASK               = 'XX X XX'
      DAT_MODE                      = ' '
      CONFIRM_OVERWRITE             = ' '
      NO_AUTH_CHECK                 = ' '
      CODEPAGE                      = ' '
      IGNORE_CERR                   = ABAP_TRUE
      REPLACEMENT                   = '#'
      WRITE_BOM                     = ' '
    IMPORTING
      FILELENGTH                    =
      tables
        data_tab                      =   t_pdf
    EXCEPTIONS
       FILE_WRITE_ERROR              = 1
       NO_BATCH                      = 2
       GUI_REFUSE_FILETRANSFER       = 3
       INVALID_TYPE                  = 4
       NO_AUTHORITY                  = 5
       UNKNOWN_ERROR                 = 6
       HEADER_NOT_ALLOWED            = 7
       SEPARATOR_NOT_ALLOWED         = 8
       FILESIZE_NOT_ALLOWED          = 9
       HEADER_TOO_LONG               = 10
       DP_ERROR_CREATE               = 11
       DP_ERROR_SEND                 = 12
       DP_ERROR_WRITE                = 13
       UNKNOWN_DP_ERROR              = 14
       ACCESS_DENIED                 = 15
       DP_OUT_OF_MEMORY              = 16
       DISK_FULL                     = 17
       DP_TIMEOUT                    = 18
       FILE_NOT_FOUND                = 19
       DATAPROVIDER_EXCEPTION        = 20
       CONTROL_FLUSH_ERROR           = 21
       OTHERS                        = 22
    IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    reward if helpful
    raam

  • Password Protection for PDF

    Dear Gurus ,
    I have come across the situation in which I want to converted PDF to be password protected .
    I have converted the smartform into PDF using OTF and sending as a mail .
    But now I want to add the Functionality of adding the Password how to Proceed for this .
    for converting PDF I am using the Funtion Modukle  :
    CALL FUNCTION 'CONVERT_OTF'
       EXPORTING
         format                      = 'PDF'
         max_linewidth               = 132
    *     ARCHIVE_INDEX               = ' '
    *     COPYNUMBER                  = 0
    *     ASCII_BIDI_VIS2LOG          = ' '
    *     PDF_DELETE_OTFTAB           = ' '
       IMPORTING
         BIN_FILESIZE                = v_len_in
    *     BIN_FILE                    =
        TABLES
          otf                         = it_otf
          lines                       = it_lines.
    How to Make this Converted PDF password protected ?
    I cant use ADOBE life cycle Designer for this .  Please help
    Thanks & Regards ,
    Aryan

    you will have to take the help of Professional Pdf editind tools such as Nova pdf or the Full version of Adobe Acrobat i.e. Acrobat Professional ..
    also check the links below ..
    [LINK|http://techblissonline.com/how-to-password-protect-pdf-documents-or-files/]
    and quote from the same
    How to password protect PDF documents or files?
    Open the PDF file in Acrobat
    Select File > Document Security from the menu
    Got to the u201CSecurity Optionsu201D drop-down and select u201CAcrobat Standard Securityu201D
    Find the box labelled u201CPassword required to open documentu201D and place a check mark against it.
    Edit or type the password
    You can also add a password requirement for changing permissions or password.To add a a required password check the box against u201Crequired password to change permissions or passwordu201D and enter the password. However note that this password must be different from the one that you entered for securing or password protecting the PDF file.
    If you want your PDF document to be password accessible to users with previous versions of Acrobat Reader (versions earlier than 5.0), do not change the 40-bit encryption setting. However if your users or audience will be using version 5 or later versions of the Reader (or the full Acrobat program) then you may use 128-bit encryption.
    Best Re

  • Get_Payslip Function

    Dear All
    I have used Get_Payslip Function Module to get Pay Slip in Internal table from that we are sending pay slip through email..
    Problem is
    recently we have change the Pay slip Design.
    While i am tiring for new pay slip design with GET_PAYSLIP function module by pass new pay slip variant , its return me my old pay slip design in internal table. While i want pay slip as per new design.
    Please help me soon as month end is coming.

    Hi Ashish,
        I have used Get_Payslip Function Module to get Pay Slip in Internal table. But After that how to send payslip to email id. How to convert that internal table data in OTF format. Please please tell me the procedure.I am finding on SDN but not getting how to do.
    Thanks.
    Pradip Pawar

  • Payslip Function

    Hi all,
    Plz help me out to sort out this issue.
    For generation of Payslip, I use function 'GET_PAYSLIP'.
    I passed all the importing parameters as well as exporting parameters. I get the result also, but it gives me only current period payslip, eventhough i passed the perfect SEQNR in function. Does anybody have solution for it??? or any function module or any class->method. If u have please tell me how to use that.
    Thanks & Regards,
    Sagar

    Hi Ashish,
        I have used Get_Payslip Function Module to get Pay Slip in Internal table. But After that how to send payslip to email id. How to convert that internal table data in OTF format. Please please tell me the procedure.I am finding on SDN but not getting how to do.
    Thanks.
    Pradip Pawar

  • ALV List as PDF

    Guys,
      Can anybody help me out in converting ALV Output List as PDF? Can anyone provide an example plz?
    How do v convert an internal table data into OTF format for PDF output? Help plz.
    Thanks in advance,
    CK

    Hi,
    use FM <b>CONVERT_ABAPSPOOLJOB_2_PDF </b> to convert it in to PDF
    CALL FUNCTION 'CONVERT_ABAPSPOOLJOB_2_PDF'
           EXPORTING
                src_spoolid              = gd_spool_nr
                no_dialog                = c_no
                dst_device               = c_device
           IMPORTING
                pdf_bytecount            = gd_bytecount
           TABLES
                pdf                      = it_pdf_output
           EXCEPTIONS
                err_no_abap_spooljob     = 1
                err_no_spooljob          = 2
                err_no_permission        = 3
                err_conv_not_possible    = 4
                err_bad_destdevice       = 5
                user_cancelled           = 6
                err_spoolerror           = 7
                err_temseerror           = 8
                err_btcjob_open_failed   = 9
                err_btcjob_submit_failed = 10
                err_btcjob_close_failed  = 11
                OTHERS                   = 12.
    use FM <b>CONVERT_OTF_2_PDF</b> to convert ot to OTF Format to PDF..
    CALL FUNCTION 'CONVERT_OTF_2_PDF'
    * EXPORTING
    * USE_OTF_MC_CMD = 'X'
    * ARCHIVE_INDEX =
    IMPORTING
    BIN_FILESIZE = P_BIN_FILESIZE
    TABLES
    OTF = P_OTF
    DOCTAB_ARCHIVE = P_DOCS
    LINES = P_LINES
    Regards,
    Santosh
    Message was edited by: Santosh Kumar P

  • Mismatching fonts

    I work in a multi-computer environment. All machines are Mac OSX.4, all have InDesign CS. We all have the same programs. We use Entourage for email, Safari and Firefox for web browsing. We don't have Word, but we do have Open Office. We have loaded the exact same fonts into our user/library/fonts folders. Theoretically, it would seem that the same document opened on different machines would show the same fonts, but with certain fonts, particularly Arial and Verdana, if I have worked on a document with the font Arial regular, when my buddy opens it, he shows that it's missing the font Arial regular (TT). If he does uses the Find Font command and changes it to HIS Arial Regular, when I open it it shows as missing the font Arial regular OTF. We've done spotlight searches on both machines for Arial, and there do seem to be numerous versions of Arial on both machines in various program folders, but all the files look the same - all show the icon with FFIL at the bottom. I've tried using an online font converter to change one to an OTF version in the hope that I could load an OTF version on my machine, but I get the message "invalid font file". This is a huge time-waster, because as we pass the file back and forth, we repeatedly have to change the font to suit our individual machines. There must be a logical solution to this issue, but we're all stumped. I suspect it has to do with the user/library/font folder location of the fonts, but that's just a guess. Can you provide a solution?

    ... there do seem to be numerous versions of Arial on both machines in various program folders, but all the files look the same - all show the icon with FFIL at the bottom ...
    InDesign can do weird things when it finds different versions with the same font name ("Arial") in different, and otherwise valid, locations.
    Try finding out which version actually is used on each computer: Find font, click the "More info" button, to show the font version and location on the hard disk. Then you can copy one of the 'good' Arials to the other computers (and make sure that will be the *only* version ID is able to see).

  • OT:  .ttc to .ttf conversion

    I use Font Agent Pro (FAP) which currently does not support .ttc fonts.
    I've tried a couple of free online font converters (eg: http://www.fontconverter.org/) to convert .ttc fonts to .ttf or .otf, but they only convert the first instance of the font (i.e. regular), and not the entire collection (i.e. regular, italic, bold, etc). Does anyone know of a conversion tool that will easily convert an entire .ttc font (True Type Collection) to the .ttf format? I want something simple, I don't want to have to work in code or Pearl.
    thanks

    Be advised that the "service" offered at the URL specified violates most font licenses in either one or two ways.
    (1)     Many font licenses specifically prohibit conversions of any form such as from TrueType to Type 1, Type 1 to TrueType, whatever to OTF, TTC to component TTF, etc.
    (2)     This online converter requires uploading a file to a third party. Virtually no font licences allow such transfers of fonts to third parties unless the third party has their own license for the font(s) in question.
    Also note that the online "service" pointed to also claims to support extraction of fonts from PDF files. Note that such extraction and use is not only against most font licenses, but also yields incomplete and effectively useless font files. The font data embedded in a PDF file (or for that matter in EPS or PostScript) is not the full font file. Obviously an embedded subset has the problem of missing glyphs and most fonts embedded in PDF (or EPS or PostScript) files are small subsets of the fonts' original complement of glyphs. But in addition, a significant amount of font metric information association with pair kerning, bounding boxes, etc. is not embedded and therefore is missing in any extraction.
              - Dov

  • Problem with characters Converting OTF Spool to PDF

    Hello All,
    Im working on ECC6.0 system. I have a Z report where it will take spool number and mail ID as input.
    It will check wheter the spool is of type OTF of ABAP List, according to that it will use the FMs ONVERT_OTFSPOOLJOB_2_PDF & CONVERT_ABAPSPOOLJOB_2_PDF.
    Now it will download the PDF internal table data into a file using OPEN DATA SET statement as shown below.
      OPEN DATASET gv_dsn FOR OUTPUT IN BINARY MODE.
    *Download the file to application server
      LOOP AT gt_pdf_output.
        TRANSFER gt_pdf_output TO gv_dsn.
      ENDLOOP.
      CLOSE DATASET gv_dsn.
    and it will ZIP the PDF as shown below.
    * open the file from application server for zipping.
      OPEN DATASET gv_dsn FOR INPUT IN BINARY MODE.
      READ DATASET gv_dsn INTO lv_content.
      CLOSE DATASET gv_dsn.
      CREATE OBJECT go_zip.
      go_zip->add( name = gv_file content = lv_content ).
      gv_zip_content    = go_zip->save( ).
    * Convert the xstring content to binary
      CALL FUNCTION 'SCMS_XSTRING_TO_BINARY'
        EXPORTING
          buffer        = gv_zip_content
        IMPORTING
          output_length = gv_file_length
        TABLES
          binary_tab    = gt_data.
    After that the ZIP file conataining the PDF will be sent as an attachement to the mail ID given as input.
    Now the problem is some characters of Czech are not coming properly when the attachement is opend once the mail is received. Can any one tell where the problem is and solution.
    Im getting the message "Can not extract the embedded front 'CourierNewL2'. Some characters may not display or print correctly." while opening the PDF in the ZIP attachment.
    Thank you.
    Best Regards,
    Sasidhar Reddy Matli.

    hi
    u also check the following link
    Re: how call FM otf to pdf in a report
    Re: otf to pdf
    Re: Error while converting OTF into PDF in CONVERT_OTF FM
    Re: Convert OTF to PDF problem
    Edited by: krupa jani on Jul 15, 2009 12:58 PM

  • Convert OTF to PDF and print PDF from Spool

    Hi,
    I have searched all the forums and service market place but could not find solution to my problem.
    I am using Function module
      CALL FUNCTION 'CONVERT_OTFSPOOLJOB_2_PDF'
        EXPORTING
          src_spoolid              = p_spool
          no_dialog                = 'X'
          dst_device               = 'ISJB'
          pdf_destination          = 'S'
        IMPORTING
          pdf_bytecount            = lv_bytecount
          pdf_spoolid              = lv_spoolid
          otf_pagecount            = lv_pagecount
          btc_jobname              = lv_jobname
          btc_jobcount             = lv_jobcount
        TABLES
          pdf                      = gt_pdf
        EXCEPTIONS
          err_no_otf_spooljob      = 1
          err_no_spooljob          = 2
          err_no_permission        = 3
          err_conv_not_possible    = 4
          err_bad_dstdevice        = 5
          user_cancelled           = 6
          err_spoolerror           = 7
          err_temseerror           = 8
          err_btcjob_open_failed   = 9
          err_btcjob_submit_failed = 10
          err_btcjob_close_failed  = 11
          OTHERS                   = 12.
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.
    this generates spool in SP01. Ideally it should generate a PDF spool file but it generates a BIN file of Format G_RAW. When I display the spool it displays all kinds of japanese characters which does not make sense,.
    I setup printer ISJB with device type JPPDF (PDF converted for Japanese characters). Does any one know where the problem could be? Why I could not print the Spool in PDF?
    Thank you,
    Jagadish

    Hi,
    check out this program which will convert spool to pdf
    REPORT  zsmartform_spool_g.
    *************Types Declaration ****************************
    TYPES : BEGIN OF gty_tab,                          " Spool Requests
            rqident   TYPE tsp01-rqident,              " Spool request number
            rqdoctype TYPE tsp01-rqdoctype,            " Spool: document type
            rqo1name  TYPE tsp01-rqo1name,             " TemSe object name
           END OF gty_tab.
    *********Work Area ****************************************
    DATA: form_name TYPE rs38l_fnam,      " Used to get the function module of Smartform
          wa_outopt TYPE ssfcompop,       " SAP Smart Forms: Smart Composer (transfer) options
          gs_tab    TYPE gty_tab.         " Spool Requests
    *******Internal Table Declarations ************************
    DATA: gt_tab TYPE STANDARD TABLE OF gty_tab,       " Spool Requests
          gt_pdf TYPE STANDARD TABLE OF tline,         " SAPscript: Text Lines
          gt_spoolid TYPE tsfspoolid,                  " Table with Spool IDs
          gt_otfdata TYPE ssfcrescl.                 " Smart Forms: Return value at end of form prnt
    *********Variable Declarations ****************************
    DATA: gv_bytecount   TYPE i,               "#EC NEEDED " PDF Byte Count
          gv_file_name   TYPE string,                    " File name
          gv_file_path   TYPE string,                    " File Path
          gv_full_path   TYPE string,                    " Path
          gv_binfilesize TYPE i,                         " Bin File size
          gv_rqident   TYPE tsp01-rqident,               " Spool request number
          gv_name TYPE tst01-dname,                      " TemSe object name
          gv_objtype TYPE rststype-type,                 " TemSe: Object type name
          gv_type TYPE rststype-type.                    " TemSe: Object type name
    START-OF-SELECTION.
      CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
        EXPORTING
          formname           = 'ZPDF_G'
        IMPORTING
          fm_name            = form_name
        EXCEPTIONS
          no_form            = 1
          no_function_module = 2
          OTHERS             = 3.
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
        WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.
    *Get Spool IDs
      wa_outopt-tdnewid = 'X'.
      wa_outopt-tddest = 'LP01'.
      CALL FUNCTION form_name
        EXPORTING
          output_options   = wa_outopt
          user_settings    = 'X'
        IMPORTING
          job_output_info  = gt_otfdata
        EXCEPTIONS
          formatting_error = 1
          internal_error   = 2
          send_error       = 3
          user_canceled    = 4
          OTHERS           = 5.
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.
    *Assign the spool id
      gt_spoolid = gt_otfdata-spoolids.
    Generate spool and pdf for the output of the form
      PERFORM sub_generate_spool_pdf.
    END-OF-SELECTION.
    *&      Form  sub_generate_spool_pdf
          Generate Spool and PDF output
    FORM sub_generate_spool_pdf .
      DATA: ls_spoolid LIKE LINE OF gt_spoolid.
    *----Get the Spool Number
      CLEAR ls_spoolid.
      READ TABLE gt_spoolid INTO ls_spoolid INDEX 1.
      IF sy-subrc = 0.
        gv_rqident = ls_spoolid.
      ENDIF.
      CLEAR gt_tab.
      SELECT  rqident rqdoctype rqo1name INTO TABLE gt_tab
               FROM tsp01 WHERE rqident = gv_rqident.
      IF sy-subrc = 0.
        CLEAR gs_tab.
    Get the TemSe: Object name into variable gv_name
        READ TABLE gt_tab INTO gs_tab INDEX 1.
        IF sy-subrc = 0.
          gv_name = gs_tab-rqo1name.
        ENDIF.
      ENDIF.
      CALL FUNCTION 'RSTS_GET_ATTRIBUTES'
        EXPORTING
          authority     = 'SP01'
          client        = sy-mandt
          name          = gv_name
          part          = 1
        IMPORTING
          type          = gv_type
          objtype       = gv_objtype
        EXCEPTIONS
          fb_error      = 1
          fb_rsts_other = 2
          no_object     = 3
          no_permission = 4
          OTHERS        = 5.
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.
    Check if temse object name type is 'OTF' or 'LIST'
      IF gv_objtype(3) = 'OTF'.
        PERFORM get_otf_spool_in_pdf.
      ELSE.
        PERFORM get_abap_spool_in_pdf.
      ENDIF.
    Generate F4 functionality from spool to pdf
      PERFORM write_pdf_spool_to_pc.
    ENDFORM.                    " sub_generate_spool_pdf
    *&      Form  get_abap_spool_in_pdf
          Generate the Spool number
    FORM get_abap_spool_in_pdf .
      REFRESH gt_pdf.
      CALL FUNCTION 'CONVERT_ABAPSPOOLJOB_2_PDF'
        EXPORTING
          src_spoolid              = gv_rqident
        IMPORTING
          pdf_bytecount            = gv_bytecount
        TABLES
          pdf                      = gt_pdf
        EXCEPTIONS
          err_no_abap_spooljob     = 1
          err_no_spooljob          = 2
          err_no_permission        = 3
          err_conv_not_possible    = 4
          err_bad_destdevice       = 5
          user_cancelled           = 6
          err_spoolerror           = 7
          err_temseerror           = 8
          err_btcjob_open_failed   = 9
          err_btcjob_submit_failed = 10
          err_btcjob_close_failed  = 11
          OTHERS                   = 12.
      IF sy-subrc NE 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
        WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.
    ENDFORM.                    " get_abap_spool_in_pdf
    *&      Form  get_otf_spool_in_pdf
          Generate OTF data from the Spool Number
    FORM get_otf_spool_in_pdf .
      REFRESH gt_pdf.
      CALL FUNCTION 'CONVERT_OTFSPOOLJOB_2_PDF'
        EXPORTING
          src_spoolid              = gv_rqident
        IMPORTING
          pdf_bytecount            = gv_bytecount
        TABLES
          pdf                      = gt_pdf
        EXCEPTIONS
          err_no_otf_spooljob      = 1
          err_no_spooljob          = 2
          err_no_permission        = 3
          err_conv_not_possible    = 4
          err_bad_dstdevice        = 5
          user_cancelled           = 6
          err_spoolerror           = 7
          err_temseerror           = 8
          err_btcjob_open_failed   = 9
          err_btcjob_submit_failed = 10
          err_btcjob_close_failed  = 11
          OTHERS                   = 12.
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
        WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.
    ENDFORM.                    " get_otf_spool_in_pdf
    *&      Form  write_pdf_spool_to_pc
          Generate PDF format
    FORM write_pdf_spool_to_pc .
      CALL METHOD cl_gui_frontend_services=>file_save_dialog
        CHANGING
          filename             = gv_file_name
          path                 = gv_file_path
          fullpath             = gv_full_path
        EXCEPTIONS
          cntl_error           = 1
          error_no_gui         = 2
          not_supported_by_gui = 3
          OTHERS               = 4.
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
        WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.
    ----DOWNLOADING THE PDF DATA***
      CALL FUNCTION 'GUI_DOWNLOAD'
        EXPORTING
          bin_filesize            = gv_binfilesize
          filename                = gv_full_path
          filetype                = 'BIN'
        TABLES
          data_tab                = gt_pdf
        EXCEPTIONS
          file_write_error        = 1
          no_batch                = 2
          gui_refuse_filetransfer = 3
          invalid_type            = 4
          no_authority            = 5
          unknown_error           = 6
          header_not_allowed      = 7
          separator_not_allowed   = 8
          filesize_not_allowed    = 9
          header_too_long         = 10
          dp_error_create         = 11
          dp_error_send           = 12
          dp_error_write          = 13
          unknown_dp_error        = 14
          access_denied           = 15
          dp_out_of_memory        = 16
          disk_full               = 17
          dp_timeout              = 18
          file_not_found          = 19
          dataprovider_exception  = 20
          control_flush_error     = 21
          OTHERS                  = 22.
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
        WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.
    ENDFORM.                    " write_pdf_spool_to_pc

  • How to upload a PDF file and convert it to OTF format

    We have come across rquirements like converting OTF to PDF but my requirement is to read a PDF file in SAP and convert it to OTF format for printing.
    Can anyone please help me with the Function Modules to do so.

    Hello,
    Try the following FM:
    CONVERT_OTF Convert SAP documents (SAPScript) to other types.
    Example:
    CALL FUNCTION "CONVERT_OTF"
    EXPORTING FORMAT = "PDF"
    IMPORTING BIN_FILESIZE = FILE_LEN
    TABLES OTF = OTFDATA
    LINES = PDFDATA
    EXCEPTIONS ERR_MAX_LINEWIDTH = 1
    ERR_FORMAT = 2
    ERR_CONV_NOT_POSSIBLE = 3
    OTHERS = 4.
    Hope this helps.
    Reward if helpful.
    Regards,
    Vasanth

Maybe you are looking for