⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.frm

📁 一个对PDF文件进行操作的第三方dll
💻 FRM
📖 第 1 页 / 共 3 页
字号:
    CallBox DrawFromFile(hBox, 100, 450, App.Path + "\sitelogo.bmp")

    ' StretchDraw product logo
    SetNum hBox, Box_FontItalic, True
    CallBox TextOut(hBox, 100, 1900, "(继续下一页)")
    CallBox NewPage(hBox)
    SetNum hBox, Box_FontItalic, False
    SetNum hBox, Box_FontBold, True
    CallBox TextOut(hBox, 100, 100, " 'StretchDraw' 方法是拉伸图片以适合矩形方框内容")
    SetNum hBox, Box_FontBold, False
    SetNum hBox, Box_BrushStyle, bsClear

    SetNum hBox, Box_SmartStretchDraw, False
    CallBox StretchDrawFromFile(hBox, 100, 200, 500, 700, App.Path + "\sitelogo.bmp")
    CallBox Rectangle(hBox, 100, 200, 500, 700)
    CallBox TextOut(hBox, 100, 750, "标准拉伸")

    SetNum hBox, Box_SmartStretchDraw, True
    SetNum hBox, Box_SmartHorzAlignment, taLeftJustify
    SetNum hBox, Box_SmartVertAlignment, vaTop
    CallBox StretchDrawFromFile(hBox, 600, 200, 1000, 700, App.Path + "\sitelogo.bmp")
    CallBox Rectangle(hBox, 600, 200, 1000, 700)
    CallBox TextOut(hBox, 600, 750, "智能拉伸")
    CallBox TextOut(hBox, 600, 800, "居左顶部对齐")

    SetNum hBox, Box_SmartStretchDraw, True
    SetNum hBox, Box_SmartHorzAlignment, taCenter
    SetNum hBox, Box_SmartVertAlignment, vaCenter
    CallBox StretchDrawFromFile(hBox, 1100, 200, 1500, 700, App.Path + "\sitelogo.bmp")
    CallBox Rectangle(hBox, 1100, 200, 1500, 700)
    CallBox TextOut(hBox, 1100, 750, "智能拉伸")
    CallBox TextOut(hBox, 1100, 800, "居中对齐")

    SetNum hBox, Box_SmartStretchDraw, True
    SetNum hBox, Box_SmartHorzAlignment, taRightJustify
    SetNum hBox, Box_SmartVertAlignment, vaBottom
    CallBox StretchDrawFromFile(hBox, 1600, 200, 2000, 700, App.Path + "\sitelogo.bmp")
    CallBox Rectangle(hBox, 1600, 200, 2000, 700)
    CallBox TextOut(hBox, 1600, 750, "智能拉伸")
    CallBox TextOut(hBox, 1600, 800, "具有底部对齐")

    SetNum hBox, Box_FontBold, True
    CallBox TextOut(hBox, 100, 1000, "智能拉伸维持图片缩放比例 (宽度:高度)")
    CallBox EndDoc(hBox)
End Sub


'4: 自定义图形
Private Sub btExample4_Click()

    Dim i, X0, Y0, R, R1 As Long
    Dim Angle, PI As Double
    Dim Hrs, Min As Integer
    PI = 3.14159
    Min = Minute(Now)
    Hrs = Hour(Now) Mod 12
 
    SetStr hBox, Box_Title, "自定义图形示例"
    CallBox BeginDoc(hBox)
    X0 = CInt(GetNum(hBox, Box_PageWidth) / 2)
    R = CInt(X0 / 4)
    Y0 = R + 200
    SetStr hBox, Box_FontName, "宋体"
    CallBox DrawText(hBox, 0, 0, GetNum(hBox, Box_PageWidth), 200, taCenter, vaCenter, "该文档创建在这个时间:")

    ' Clock body
    SetNum hBox, Box_PenColor, vbBlue
    SetNum hBox, Box_PenWidth, 2
    SetNum hBox, Box_BrushStyle, bsClear
    CallBox Ellipse(hBox, X0 - R - 10, Y0 - R - 10, X0 + R + 10, Y0 + R + 10)
    SetNum hBox, Box_BrushColor, RGB(255, 255, 128)
    CallBox Ellipse(hBox, X0 - R, Y0 - R, X0 + R, Y0 + R)

    ' Graduation
    R1 = CInt(0.92 * R)
    SetNum hBox, Box_PenColor, vbBlack
    SetNum hBox, Box_PenWidth, 10
    For i = 0 To 11
      Angle = i * PI / 6
      CallBox MoveTo(hBox, CInt(X0 + R1 * Cos(Angle)), CInt(Y0 - R1 * Sin(Angle)))
      CallBox LineTo(hBox, CInt(X0 + R * Cos(Angle)), CInt(Y0 - R * Sin(Angle)))
    Next i

    ' Digital display
    SetNum hBox, Box_PenWidth, 2
    SetNum hBox, Box_PenColor, vbBlack
    SetNum hBox, Box_BrushColor, RGB(192, 192, 192)
    CallBox Rectangle(hBox, X0 - 100, Y0 + 100, X0 + 100, Y0 + 150)
    SetNum hBox, Box_FontSize, 12
    SetNum hBox, Box_FontBold, 1
    CallBox DrawText(hBox, X0 - 100, Y0 + 100, X0 + 100, Y0 + 150, taCenter, vaCenter, Format(Now, "hh:mm:ss"))
    SetNum hBox, Box_FontBold, 0
    
    ' Long hand
    Angle = PI / 2 - Min * PI / 30
    SetNum hBox, Box_PenWidth, 8
    SetNum hBox, Box_PenColor, vbRed
    R1 = CInt(0.12 * R)
    CallBox MoveTo(hBox, CInt(X0 - R1 * Cos(Angle)), CInt(Y0 + R1 * Sin(Angle)))
    R1 = CInt(0.85 * R)
    CallBox LineTo(hBox, CInt(X0 + R1 * Cos(Angle)), CInt(Y0 - R1 * Sin(Angle)))

    ' Short hand
    Angle = PI / 2 - (Hrs * PI / 6) - (Min * PI / (30 * 12))
    SetNum hBox, Box_PenWidth, 15
    SetNum hBox, Box_PenColor, vbRed
    R1 = CInt(0.08 * R)
    CallBox MoveTo(hBox, CInt(X0 - R1 * Cos(Angle)), CInt(Y0 + R1 * Sin(Angle)))
    R1 = CInt(0.5 * R)
    CallBox LineTo(hBox, CInt(X0 + R1 * Cos(Angle)), CInt(Y0 - R1 * Sin(Angle)))

    ' Nave
    R1 = CInt(0.02 * R)
    SetNum hBox, Box_BrushColor, vbBlack
    CallBox Ellipse(hBox, X0 - R1, Y0 - R1, X0 + R1, Y0 + R1)
    CallBox EndDoc(hBox)
End Sub


'5: 绘制表格
Private Sub btExample5_Click()
  Dim i As Long, n As Long, h As Long
  Dim Comment As String
    SetStr hBox, Box_Title, "绘制表格示例"
    CallBox BeginDoc(hBox)
    SetNum hBox, Box_FontBold, 1
    SetStr hBox, Box_FontName, "宋体"
    CallBox TextOut(hBox, 100, 100, "表格示例")
    SetNum hBox, Box_FontBold, 0
    CallBox TextOut(hBox, 100, 200, "该示例演示一个可变行高的表格.")

    ' Grid header
    SetNum hBox, Box_BrushStyle, bsSolid
    SetNum hBox, Box_BrushColor, RGB(192, 192, 192)
    CallBox DefineGrid(hBox, "GridHeader", taCenter, 10)
    For i = 0 To 3
      CallBox DefineCol(hBox, "GridHeader", 220, taCenter, vaTop, 0)
    Next i
    CallBox DefineCol(hBox, "GridHeader", 400, taLeftJustify, vaTop, 0)
    CallBox DefineCol(hBox, "GridHeader", 0, taLeftJustify, vaTop, 1)
    CallBox DrawGrid(hBox, "GridHeader", CInt(GetNum(hBox, Box_PageWidth) / 2), 300)
    CallBox DrawRow(hBox, "GridHeader", 50)
    CallBox TextToCell(hBox, "GridHeader", 0, 0, "序号")
    CallBox TextToCell(hBox, "GridHeader", 1, 0, "平方根")
    CallBox TextToCell(hBox, "GridHeader", 2, 0, "平方")
    CallBox TextToCell(hBox, "GridHeader", 3, 0, "立方")
    CallBox TextToCell(hBox, "GridHeader", 4, 0, "备注")

    ' Grid body
    CallBox DefineGrid(hBox, "GridBody", taCenter, 10)
    SetNum hBox, Box_BrushStyle, bsSolid
    SetNum hBox, Box_BrushColor, vbCyan
    CallBox DefineCol(hBox, "GridBody", 220, taCenter, vaTop, 0)

    SetNum hBox, Box_BrushStyle, bsClear
    For i = 1 To 3
      CallBox DefineCol(hBox, "GridBody", 220, taRightJustify, vaTop, 0)
    Next i
    CallBox DefineCol(hBox, "GridBody", 400, taLeftJustify, vaTop, 1)
    CallBox DefineCol(hBox, "GridBody", 0, taLeftJustify, vaTop, 0)

    CallBox DrawGrid(hBox, "GridBody", CInt(GetNum(hBox, Box_PageWidth) / 2), 350)
    For n = 0 To 10
      Select Case n
        Case 0
          Comment = "归零, 计算方便!"
        Case 1
          Comment = "也很方便."
        Case 4, 9
          Comment = "http://mndsoft.com."
        Case 10
          Comment = "加入枕善居VIP会员,即可免费下载后续破解更新." + Chr(13) + chr10 + "http://mndsoft.com."
      Case Else
        Comment = ""
      End Select
      h = CellTextHeight(hBox, "GridBody", 4, Comment)
      If h < 50 Then h = 50
      CallBox DrawRow(hBox, "GridBody", h)
      SetNum hBox, Box_FontColor, vbBlue
      SetNum hBox, Box_FontBold, 1
      CallBox TextToCell(hBox, "GridBody", 0, n, Str(n))
      SetNum hBox, Box_FontColor, vbBlack
      SetNum hBox, Box_FontBold, 0
      CallBox TextToCell(hBox, "GridBody", 1, n, Format(Sqr(n), "0.000000"))
      CallBox TextToCell(hBox, "GridBody", 2, n, Str(n * n))
      CallBox TextToCell(hBox, "GridBody", 3, n, Str(n * n * n))
      CallBox TextToCell(hBox, "GridBody", 4, n, Comment)
    Next n
    CallBox DrawRow(hBox, "GridBody", 0)    ' to display bottom border
    CallBox EndDoc(hBox)
End Sub

'6: 完整演示
Private Sub btExample6_Click()
    SetStr hBox, Box_Title, "完整功能示例"
    CallBox BeginDoc(hBox)

    ' Links
    SetStr hBox, Box_FontName, "宋体"
    SetNum hBox, Box_FontSize, 14
    SetNum hBox, Box_FontColor, vbBlack
    SetNum hBox, Box_FontBold, 1
    SetStr hBox, Box_FontName, "宋体"
    CallBox WriteBookmark(hBox, 100, 100, "Html Link", 1, 1)
    SetNum hBox, Box_FontSize, 12
    CallBox WriteBookmark(hBox, 100, 200, "Text Link", 2, 1)
    SetNum hBox, Box_FontSize, 10
    SetNum hBox, Box_FontColor, vbBlue
    SetNum hBox, Box_FontBold, 0
    SetNum hBox, Box_FontUnderline, 1
    CallBox WriteLink(hBox, 100, 300, "Internal link (to 'Annotations' topic)", "Annotations")
    CallBox WriteLink(hBox, 100, 400, "External link (to a file)", App.Path + "\PDF In-The-Box.bmp")
    CallBox WriteLink(hBox, 100, 500, "Internet Link", "http://www.synactis.com")
    CallBox WriteLink(hBox, 100, 600, "Navigation Link: go to next page", "NextPage")

    SetNum hBox, Box_FontColor, vbBlack
    SetNum hBox, Box_FontBold, 1
    SetNum hBox, Box_FontUnderline, 0
    SetNum hBox, Box_FontSize, 12
    CallBox WriteBookmark(hBox, 100, 800, "演示图片链接", 2, 1)
    SetNum hBox, Box_FontSize, 10
    SetNum hBox, Box_FontBold, 0
    CallBox TextOut(hBox, 100, 900, "单击缩略图显示完整大图:")
    CallBox StretchDrawFromFile(hBox, 800, 800, 1000, 1000, App.Path + "\PDF In-The-Box.bmp")
    CallBox SetLink(hBox, 800, 800, 1000, 1000, App.Path + "\PDF In-The-Box.bmp")

    ' 书签
    CallBox NewPage(hBox)
    SetNum hBox, Box_FontSize, 14
    SetNum hBox, Box_FontColor, vbBlack
    SetNum hBox, Box_FontBold, 1
    SetStr hBox, Box_FontName, "宋体"
    CallBox WriteBookmark(hBox, 100, 100, "Bookmarks", 1, 1)
    SetNum hBox, Box_FontSize, 10
    SetNum hBox, Box_FontBold, 0
    CallBox TextOut(hBox, 100, 200, "Bookmarks allow to create a tree-structured table of contents (click on 'Bookmarks' tab if not visible)")
    CallBox TextOut(hBox, 100, 250, "You can bookmark a title or even a specific location without text.")

    ' Annotations
    CallBox NewPage(hBox)
    SetNum hBox, Box_FontSize, 14
    SetNum hBox, Box_FontColor, vbBlack
    SetNum hBox, Box_FontBold, 1
    CallBox WriteBookmark(hBox, 100, 100, "Annotations", 1, 1)
    CallBox DefineName(hBox, 100, 100, "Annotations")   ' this is a link destination

    SetNum hBox, Box_FontSize, 10
    SetNum hBox, Box_FontBold, 0
    CallBox TextOut(hBox, 100, 250, "这里是两个说明:")
    CallBox Annotation(hBox, 550, 230, "Annotations may be useful to give detailed informations." _
      + Chr(13) + Chr(10) + "As they are displayed in pop-up windows, they don't interfere with main text.", _
      anNote)
    CallBox Annotation(hBox, 750, 230, "Annotations are supported by Adobe Reader

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -