diff --git a/Project_fp13/CEpole_fp13.vbproj b/Project_fp13/CEpole_fp13.vbproj index 3fc9244..7e92dbd 100644 --- a/Project_fp13/CEpole_fp13.vbproj +++ b/Project_fp13/CEpole_fp13.vbproj @@ -240,7 +240,7 @@ - + {FC8D5F6B-9892-48A4-BD90-4FA6F427567C} ArinClassV2 diff --git a/Project_fp13/Defalut_PrintForm.vb b/Project_fp13/Defalut_PrintForm.vb index 8353bb8..3dfff4c 100644 --- a/Project_fp13/Defalut_PrintForm.vb +++ b/Project_fp13/Defalut_PrintForm.vb @@ -882,9 +882,16 @@ Public Class Defalut_PrintForm Dr = StyleList(SetForm.cmb_style.SelectedIndex).PATTERNTABLE.Select("설명 = '" & pname2 & TOBJ.Name & "FONT'") If Dr.GetUpperBound(0) = 0 Then CTLFONT = Dr(0)(1).ToString.Split(",") - TOBJ.Font = New Font(CTLFONT(0), CTLFONT(1), IIf(CTLFONT(3).ToUpper = "TRUE", FontStyle.Bold, FontStyle.Regular), GraphicsUnit.Point) + + Dim fStyle As FontStyle = FontStyle.Regular + If CTLFONT(2).ToUpper = "TRUE" Then fStyle = fStyle Or FontStyle.Underline + If CTLFONT(3).ToUpper = "TRUE" Then fStyle = fStyle Or FontStyle.Bold + If CTLFONT(4).ToUpper = "TRUE" Then fStyle = fStyle Or FontStyle.Italic + TOBJ.Font = New Font(CTLFONT(0), CTLFONT(1), fStyle, GraphicsUnit.Point) TOBJ.WordWidth = CTLFONT(5) '//장평 TOBJ.WordHeight = CTLFONT(6) '//장높이 + + End If Dr = StyleList(SetForm.cmb_style.SelectedIndex).PATTERNTABLE.Select("설명 = '" & pname2 & TOBJ.Name & "VISIBLE'") @@ -1009,7 +1016,13 @@ Public Class Defalut_PrintForm Dr = StyleList(SetForm.cmb_style.SelectedIndex).PATTERNTABLE.Select("설명 = '" & pname & TOBJ.Name & "FONT'") If Dr.GetUpperBound(0) = 0 Then CTLFONT = Dr(0)(1).ToString.Split(",") - TOBJ.Font = New Font(CTLFONT(0), CTLFONT(1), IIf(CTLFONT(3).ToUpper = "TRUE", FontStyle.Bold, FontStyle.Regular), GraphicsUnit.Point) + + Dim fStyle As FontStyle = FontStyle.Regular + If CTLFONT(2).ToUpper = "TRUE" Then fStyle = fStyle Or FontStyle.Underline + If CTLFONT(3).ToUpper = "TRUE" Then fStyle = fStyle Or FontStyle.Bold + If CTLFONT(4).ToUpper = "TRUE" Then fStyle = fStyle Or FontStyle.Italic + + TOBJ.Font = New Font(CTLFONT(0), CTLFONT(1), fStyle, GraphicsUnit.Point) TOBJ.WordWidth = CTLFONT(5) '//장평 TOBJ.WordHeight = CTLFONT(6) '//장높이 End If @@ -1088,7 +1101,11 @@ Public Class Defalut_PrintForm Dr = StyleList(SetForm.cmb_style.SelectedIndex).PATTERNTABLE.Select("설명 = '" & pname & TOBJ.Name & "FONT'") If Dr.GetUpperBound(0) = 0 Then CTLFONT = Dr(0)(1).ToString.Split(",") - TOBJ.Font = New Font(CTLFONT(0), CTLFONT(1), IIf(CTLFONT(3).ToUpper = "TRUE", FontStyle.Bold, FontStyle.Regular), GraphicsUnit.Point) + Dim fStyle As FontStyle = FontStyle.Regular + If CTLFONT(2).ToUpper = "TRUE" Then fStyle = fStyle Or FontStyle.Underline + If CTLFONT(3).ToUpper = "TRUE" Then fStyle = fStyle Or FontStyle.Bold + If CTLFONT(4).ToUpper = "TRUE" Then fStyle = fStyle Or FontStyle.Italic + TOBJ.Font = New Font(CTLFONT(0), CTLFONT(1), fStyle, GraphicsUnit.Point) TOBJ.WordWidth = CTLFONT(5) TOBJ.WordHeight = CTLFONT(6) 'MsgBox(CTLFONT(0)) @@ -2115,7 +2132,14 @@ Public Class Defalut_PrintForm '//상태를 읽어서 바로 적용한다. Tobj.Location = New Point(pos(0), pos(1)) Tobj.Size = New Size(pos(2), pos(3)) - Tobj.Font = New Font(font(0), font(1), IIf(font(3).ToUpper = "TRUE", FontStyle.Bold, FontStyle.Regular), GraphicsUnit.Point) + + Dim fStyle As FontStyle = FontStyle.Regular + If font(2).ToUpper = "TRUE" Then fStyle = fStyle Or FontStyle.Underline + If font(3).ToUpper = "TRUE" Then fStyle = fStyle Or FontStyle.Bold + If font(4).ToUpper = "TRUE" Then fStyle = fStyle Or FontStyle.Italic + + + Tobj.Font = New Font(font(0), font(1), fStyle, GraphicsUnit.Point) Tobj.WordWidth = font(5) Tobj.WordHeight = font(6) Tobj.WordSpace = Arinini.Read(StyleName, Tobj.Name & "space", 0) @@ -2136,7 +2160,13 @@ Public Class Defalut_PrintForm '//상태를 읽어서 바로 적용한다. Tobj.Location = New Point(pos(0), pos(1)) Tobj.Size = New Size(pos(2), pos(3)) - Tobj.Font = New Font(font(0), font(1), IIf(font(3).ToUpper = "TRUE", FontStyle.Bold, FontStyle.Regular), GraphicsUnit.Point) + + Dim fStyle As FontStyle = FontStyle.Regular + If font(2).ToUpper = "TRUE" Then fStyle = fStyle Or FontStyle.Underline + If font(3).ToUpper = "TRUE" Then fStyle = fStyle Or FontStyle.Bold + If font(4).ToUpper = "TRUE" Then fStyle = fStyle Or FontStyle.Italic + + Tobj.Font = New Font(font(0), font(1), fStyle, GraphicsUnit.Point) Tobj.WordWidth = font(5) Tobj.WordHeight = font(6) Tobj.WordSpace = Arinini.Read(StyleName, Tobj.Name & "space", 0) @@ -2393,9 +2423,13 @@ Public Class Defalut_PrintForm DR = StyleList(SetForm.cmb_style.SelectedIndex).PATTERNTABLE.Select("설명 = 'STYLE" & Tobj.Name.ToUpper & "FONT'") If DR.GetUpperBound(0) = 0 Then font = DR(0)(1).ToString.Split(",") + Dim fStyle As FontStyle = FontStyle.Regular + If font(2).ToUpper = "TRUE" Then fStyle = fStyle Or FontStyle.Underline + If font(3).ToUpper = "TRUE" Then fStyle = fStyle Or FontStyle.Bold + If font(4).ToUpper = "TRUE" Then fStyle = fStyle Or FontStyle.Italic Tobj.WordWidth = font(5) Tobj.WordHeight = font(6) - Tobj.Font = New Font(font(0), font(1), IIf(font(3).ToUpper = "TRUE", FontStyle.Bold, FontStyle.Regular), GraphicsUnit.Point) + Tobj.Font = New Font(font(0), font(1), fStyle, GraphicsUnit.Point) ' MsgBox(font(0)) End If @@ -2454,7 +2488,11 @@ Public Class Defalut_PrintForm font = DR(0)(1).ToString.Split(",") Tobj.WordWidth = font(5) Tobj.WordHeight = font(6) - Tobj.Font = New Font(font(0), font(1), IIf(font(3).ToUpper = "TRUE", FontStyle.Bold, FontStyle.Regular), GraphicsUnit.Point) + Dim fStyle As FontStyle = FontStyle.Regular + If font(2).ToUpper = "TRUE" Then fStyle = fStyle Or FontStyle.Underline + If font(3).ToUpper = "TRUE" Then fStyle = fStyle Or FontStyle.Bold + If font(4).ToUpper = "TRUE" Then fStyle = fStyle Or FontStyle.Italic + Tobj.Font = New Font(font(0), font(1), fStyle, GraphicsUnit.Point) ' MsgBox(font(0)) End If diff --git a/Project_fp5/CEpole_fp5.vbproj b/Project_fp5/CEpole_fp5.vbproj index 9b5943e..6509c56 100644 --- a/Project_fp5/CEpole_fp5.vbproj +++ b/Project_fp5/CEpole_fp5.vbproj @@ -232,7 +232,7 @@ - + {FC8D5F6B-9892-48A4-BD90-4FA6F427567C} ArinClassV2 diff --git a/Project_fp5/Defalut_PrintForm.vb b/Project_fp5/Defalut_PrintForm.vb index 567f75a..d7a2afb 100644 --- a/Project_fp5/Defalut_PrintForm.vb +++ b/Project_fp5/Defalut_PrintForm.vb @@ -265,7 +265,7 @@ Public Class Defalut_PrintForm ''' 초기화합니다. ''' ''' - Public Sub Initialize(ByVal V_Srctable As DataTable, ByVal styleTag As String, _ + Public Sub Initialize(ByVal V_Srctable As DataTable, ByVal styleTag As String, ByVal v_SettingFile As String, ByVal v_DefStyleIndex As Short, Optional ByVal ADT As DataTable = Nothing, Optional ByVal OT As Boolean = False) RaiseEvent StatusMessage("폼을 초기화합니다", e_EventMessage.Normal) @@ -882,7 +882,12 @@ Public Class Defalut_PrintForm Dr = StyleList(SetForm.cmb_style.SelectedIndex).PATTERNTABLE.Select("설명 = '" & pname2 & TOBJ.Name & "FONT'") If Dr.GetUpperBound(0) = 0 Then CTLFONT = Dr(0)(1).ToString.Split(",") - TOBJ.Font = New Font(CTLFONT(0), CTLFONT(1), IIf(CTLFONT(3).ToUpper = "TRUE", FontStyle.Bold, FontStyle.Regular), GraphicsUnit.Point) + Dim fStyle As FontStyle = FontStyle.Regular + If CTLFONT(2).ToUpper() = "TRUE" Then fStyle = fStyle Or FontStyle.Underline + If CTLFONT(3).ToUpper() = "TRUE" Then fStyle = fStyle Or FontStyle.Bold + If CTLFONT(4).ToUpper() = "TRUE" Then fStyle = fStyle Or FontStyle.Italic + + TOBJ.Font = New Font(CTLFONT(0), CTLFONT(1), fStyle, GraphicsUnit.Point) TOBJ.WordWidth = CTLFONT(5) '//장평 TOBJ.WordHeight = CTLFONT(6) '//장높이 End If @@ -1009,7 +1014,11 @@ Public Class Defalut_PrintForm Dr = StyleList(SetForm.cmb_style.SelectedIndex).PATTERNTABLE.Select("설명 = '" & pname & TOBJ.Name & "FONT'") If Dr.GetUpperBound(0) = 0 Then CTLFONT = Dr(0)(1).ToString.Split(",") - TOBJ.Font = New Font(CTLFONT(0), CTLFONT(1), IIf(CTLFONT(3).ToUpper = "TRUE", FontStyle.Bold, FontStyle.Regular), GraphicsUnit.Point) + Dim fStyle As FontStyle = FontStyle.Regular + If CTLFONT(2).ToUpper() = "TRUE" Then fStyle = fStyle Or FontStyle.Underline + If CTLFONT(3).ToUpper() = "TRUE" Then fStyle = fStyle Or FontStyle.Bold + If CTLFONT(4).ToUpper() = "TRUE" Then fStyle = fStyle Or FontStyle.Italic + TOBJ.Font = New Font(CTLFONT(0), CTLFONT(1), fStyle, GraphicsUnit.Point) TOBJ.WordWidth = CTLFONT(5) '//장평 TOBJ.WordHeight = CTLFONT(6) '//장높이 End If @@ -1088,7 +1097,11 @@ Public Class Defalut_PrintForm Dr = StyleList(SetForm.cmb_style.SelectedIndex).PATTERNTABLE.Select("설명 = '" & pname & TOBJ.Name & "FONT'") If Dr.GetUpperBound(0) = 0 Then CTLFONT = Dr(0)(1).ToString.Split(",") - TOBJ.Font = New Font(CTLFONT(0), CTLFONT(1), IIf(CTLFONT(3).ToUpper = "TRUE", FontStyle.Bold, FontStyle.Regular), GraphicsUnit.Point) + Dim fStyle As FontStyle = FontStyle.Regular + If CTLFONT(2).ToUpper() = "TRUE" Then fStyle = fStyle Or FontStyle.Underline + If CTLFONT(3).ToUpper() = "TRUE" Then fStyle = fStyle Or FontStyle.Bold + If CTLFONT(4).ToUpper() = "TRUE" Then fStyle = fStyle Or FontStyle.Italic + TOBJ.Font = New Font(CTLFONT(0), CTLFONT(1), fStyle, GraphicsUnit.Point) TOBJ.WordWidth = CTLFONT(5) TOBJ.WordHeight = CTLFONT(6) 'MsgBox(CTLFONT(0)) @@ -1536,126 +1549,235 @@ Public Class Defalut_PrintForm '//라인을 그린다. Dim I As Short = 0 Try + If Not Me.Draw_Line Is Nothing AndAlso Not Draw_Line.Items Is Nothing Then + For Each Rect As S_Line In Me.Draw_Line.Items + Dim Pen As New Drawing.Pen(Rect.PenColor, Rect.PenWidth) - For Each Rect As S_Line In Me.Draw_Line.Items - Dim Pen As New Drawing.Pen(Rect.PenColor, Rect.PenWidth) + Dim NewSX As Single = Rect.X + Dim NewSY As Single = Rect.Y + Dim NewSX2 As Single = Rect.X2 + Dim NewSY2 As Single = Rect.Y2 - Dim NewSX As Single = Rect.X - Dim NewSY As Single = Rect.Y - Dim NewSX2 As Single = Rect.X2 - Dim NewSY2 As Single = Rect.Y2 + If RowIndex > 0 Then '//연속출력일때에는 줄구분 값을 사용한다. + NewSX += SetForm.MyProperty_Paper.연속여백x * (dummycnt - RowIndex * SetForm.MyProperty_Paper.분리갯수) + NewSY += SetForm.MyProperty_Paper.연속여백y * (dummycnt - RowIndex * SetForm.MyProperty_Paper.분리갯수) + NewSX2 += SetForm.MyProperty_Paper.연속여백x * (dummycnt - RowIndex * SetForm.MyProperty_Paper.분리갯수) + NewSY2 += SetForm.MyProperty_Paper.연속여백y * (dummycnt - RowIndex * SetForm.MyProperty_Paper.분리갯수) + Else + NewSX += SetForm.MyProperty_Paper.연속여백x * dummycnt + NewSY += SetForm.MyProperty_Paper.연속여백y * dummycnt + NewSX2 += SetForm.MyProperty_Paper.연속여백x * dummycnt + NewSY2 += SetForm.MyProperty_Paper.연속여백y * dummycnt + End If - If RowIndex > 0 Then '//연속출력일때에는 줄구분 값을 사용한다. - NewSX += SetForm.MyProperty_Paper.연속여백x * (dummycnt - RowIndex * SetForm.MyProperty_Paper.분리갯수) - NewSY += SetForm.MyProperty_Paper.연속여백y * (dummycnt - RowIndex * SetForm.MyProperty_Paper.분리갯수) - NewSX2 += SetForm.MyProperty_Paper.연속여백x * (dummycnt - RowIndex * SetForm.MyProperty_Paper.분리갯수) - NewSY2 += SetForm.MyProperty_Paper.연속여백y * (dummycnt - RowIndex * SetForm.MyProperty_Paper.분리갯수) - Else - NewSX += SetForm.MyProperty_Paper.연속여백x * dummycnt - NewSY += SetForm.MyProperty_Paper.연속여백y * dummycnt - NewSX2 += SetForm.MyProperty_Paper.연속여백x * dummycnt - NewSY2 += SetForm.MyProperty_Paper.연속여백y * dummycnt - End If + NewSX += RowOffsetX + NewSY += RowOffsetY - NewSX += RowOffsetX - NewSY += RowOffsetY + NewSX2 += RowOffsetX + NewSY2 += RowOffsetY - NewSX2 += RowOffsetX - NewSY2 += RowOffsetY + If Print Then + NewSX += SetForm.MyProperty_Paper.출력여백X + NewSY += SetForm.MyProperty_Paper.출력여백Y - If Print Then - NewSX += SetForm.MyProperty_Paper.출력여백X - NewSY += SetForm.MyProperty_Paper.출력여백Y + NewSX2 += SetForm.MyProperty_Paper.출력여백X + NewSY2 += SetForm.MyProperty_Paper.출력여백Y + End If - NewSX2 += SetForm.MyProperty_Paper.출력여백X - NewSY2 += SetForm.MyProperty_Paper.출력여백Y - End If + Ga.DrawLine(Pen, NewSX, NewSY, NewSX2, NewSY2) - Ga.DrawLine(Pen, NewSX, NewSY, NewSX2, NewSY2) + Next + End If - Next Catch ex As Exception End Try '//박스를 그린다. I = 0 Try - For Each Rect As S_Box In Me.Draw_Box.Items - Dim Pen As New Drawing.Pen(Rect.PenColor, Rect.PenWidth) + If Not Me.Draw_Box Is Nothing AndAlso Not Me.Draw_Box.Items Is Nothing Then + For Each Rect As S_Box In Me.Draw_Box.Items + Dim Pen As New Drawing.Pen(Rect.PenColor, Rect.PenWidth) - Dim NewSX As Single = Rect.X - Dim NewSY As Single = Rect.Y + Dim NewSX As Single = Rect.X + Dim NewSY As Single = Rect.Y - If RowIndex > 0 Then '//연속출력일때에는 줄구분 값을 사용한다. - NewSX += SetForm.MyProperty_Paper.연속여백x * (dummycnt - RowIndex * SetForm.MyProperty_Paper.분리갯수) - NewSY += SetForm.MyProperty_Paper.연속여백y * (dummycnt - RowIndex * SetForm.MyProperty_Paper.분리갯수) - Else - NewSX += SetForm.MyProperty_Paper.연속여백x * dummycnt - NewSY += SetForm.MyProperty_Paper.연속여백y * dummycnt - End If + If RowIndex > 0 Then '//연속출력일때에는 줄구분 값을 사용한다. + NewSX += SetForm.MyProperty_Paper.연속여백x * (dummycnt - RowIndex * SetForm.MyProperty_Paper.분리갯수) + NewSY += SetForm.MyProperty_Paper.연속여백y * (dummycnt - RowIndex * SetForm.MyProperty_Paper.분리갯수) + Else + NewSX += SetForm.MyProperty_Paper.연속여백x * dummycnt + NewSY += SetForm.MyProperty_Paper.연속여백y * dummycnt + End If - NewSX += RowOffsetX - NewSY += RowOffsetY + NewSX += RowOffsetX + NewSY += RowOffsetY - If Print Then - NewSX += +SetForm.MyProperty_Paper.출력여백X - NewSY += +SetForm.MyProperty_Paper.출력여백Y - End If + If Print Then + NewSX += +SetForm.MyProperty_Paper.출력여백X + NewSY += +SetForm.MyProperty_Paper.출력여백Y + End If - If Rect.Radius = 0 Then - Ga.DrawRectangle(Pen, NewSX, NewSY, Rect.Width, Rect.Height) - Else - Dim rRect As Rectangle = New Rectangle(NewSX, NewSY, Rect.Width, Rect.Height) - Dim rpath As System.Drawing.Drawing2D.GraphicsPath = ACC.MYGDI.GetRoundedRectPath(rRect, Rect.Radius) - Ga.DrawPath(Pen, rpath) - End If + If Rect.Radius = 0 Then + Ga.DrawRectangle(Pen, NewSX, NewSY, Rect.Width, Rect.Height) + Else + Dim rRect As Rectangle = New Rectangle(NewSX, NewSY, Rect.Width, Rect.Height) + Dim rpath As System.Drawing.Drawing2D.GraphicsPath = ACC.MYGDI.GetRoundedRectPath(rRect, Rect.Radius) + Ga.DrawPath(Pen, rpath) + End If + + Next + End If - Next Catch ex As Exception End Try '//원 그린다. I = 0 Try - For Each Rect As S_Circle In Me.Draw_Circle.Items - Dim Pen As New Drawing.Pen(Rect.PenColor, Rect.PenWidth) + If Not Draw_Circle Is Nothing AndAlso Not Me.Draw_Circle.Items Is Nothing Then + For Each Rect As S_Circle In Me.Draw_Circle.Items + Dim Pen As New Drawing.Pen(Rect.PenColor, Rect.PenWidth) - Dim NewSX As Single = Rect.X - Dim NewSY As Single = Rect.Y + Dim NewSX As Single = Rect.X + Dim NewSY As Single = Rect.Y - If RowIndex > 0 Then '//연속출력일때에는 줄구분 값을 사용한다. - NewSX += SetForm.MyProperty_Paper.연속여백x * (dummycnt - RowIndex * SetForm.MyProperty_Paper.분리갯수) - NewSY += SetForm.MyProperty_Paper.연속여백y * (dummycnt - RowIndex * SetForm.MyProperty_Paper.분리갯수) - Else - NewSX += SetForm.MyProperty_Paper.연속여백x * dummycnt - NewSY += SetForm.MyProperty_Paper.연속여백y * dummycnt - End If + If RowIndex > 0 Then '//연속출력일때에는 줄구분 값을 사용한다. + NewSX += SetForm.MyProperty_Paper.연속여백x * (dummycnt - RowIndex * SetForm.MyProperty_Paper.분리갯수) + NewSY += SetForm.MyProperty_Paper.연속여백y * (dummycnt - RowIndex * SetForm.MyProperty_Paper.분리갯수) + Else + NewSX += SetForm.MyProperty_Paper.연속여백x * dummycnt + NewSY += SetForm.MyProperty_Paper.연속여백y * dummycnt + End If - NewSX += RowOffsetX - NewSY += RowOffsetY + NewSX += RowOffsetX + NewSY += RowOffsetY - If Print Then - NewSX += +SetForm.MyProperty_Paper.출력여백X - NewSY += +SetForm.MyProperty_Paper.출력여백Y - End If + If Print Then + NewSX += +SetForm.MyProperty_Paper.출력여백X + NewSY += +SetForm.MyProperty_Paper.출력여백Y + End If - Ga.DrawEllipse(Pen, NewSX, NewSY, Rect.Width, Rect.Height) - Next + Ga.DrawEllipse(Pen, NewSX, NewSY, Rect.Width, Rect.Height) + Next + End If + Catch ex As Exception End Try '//이미지개체를 그린다. I = 0 Try - For Each Rect As S_Image In Me.Draw_Image.Items - Dim F As String = Rect.FileName - If F.Trim <> "" Then - F = F.Replace(".\", My.Application.Info.DirectoryPath & "\") - ' MsgBox(F) + If Not Draw_Image Is Nothing AndAlso Not Me.Draw_Image.Items Is Nothing Then + For Each Rect As S_Image In Me.Draw_Image.Items + Dim F As String = Rect.FileName + If F.Trim <> "" Then + F = F.Replace(".\", My.Application.Info.DirectoryPath & "\") + ' MsgBox(F) - If System.IO.File.Exists(F) Then - Dim Image As Image = Image.FromFile(F) '//파일로부터 이미지를 가져옴 + If System.IO.File.Exists(F) Then + Dim Image As Image = Image.FromFile(F) '//파일로부터 이미지를 가져옴 + + + Dim NewSX As Single = Rect.X + Dim NewSY As Single = Rect.Y + + If RowIndex > 0 Then '//연속출력일때에는 줄구분 값을 사용한다. + NewSX += SetForm.MyProperty_Paper.연속여백x * (dummycnt - RowIndex * SetForm.MyProperty_Paper.분리갯수) + NewSY += SetForm.MyProperty_Paper.연속여백y * (dummycnt - RowIndex * SetForm.MyProperty_Paper.분리갯수) + Else + NewSX += SetForm.MyProperty_Paper.연속여백x * dummycnt + NewSY += SetForm.MyProperty_Paper.연속여백y * dummycnt + End If + + NewSX += RowOffsetX + NewSY += RowOffsetY + + If Print Then + NewSX += +SetForm.MyProperty_Paper.출력여백X + NewSY += +SetForm.MyProperty_Paper.출력여백Y + End If + + If Rect.Width = 0 OrElse Rect.Height = 0 Then + Ga.DrawImage(Image, NewSX, NewSY) + Else + Ga.DrawImage(Image, NewSX, NewSY, Rect.Width, Rect.Height) + End If + + + End If + End If + Next + End If + + Catch ex As Exception + + End Try + I = 0 + '//QR코드를 그린다. + Try + '//QR코드를 그린다. + If Not Draw_QRcode Is Nothing AndAlso Not Me.Draw_QRcode.Items Is Nothing Then + For Each Rect As S_QRCode In Me.Draw_QRcode.Items + 'Dim scale As Int16 + ' Dim version As Int16 + Dim image As Image + Dim data As String = "" + ' Dim errorCorrect As String + Dim qrCodeEncoder1 As New ThoughtWorks.QRCode.Codec.QRCodeEncoder() + ' Dim encoding As String + + + qrCodeEncoder1.QRCodeEncodeMode = CInt(Rect.Encoding) + qrCodeEncoder1.QRCodeErrorCorrect = CInt(Rect.CLeve) + qrCodeEncoder1.QRCodeVersion = Rect.Version + qrCodeEncoder1.QRCodeScale = Rect.Size + + 'encoding = "3" + 'If encoding = "3" Then + ' qrCodeEncoder.QRCodeEncodeMode = ThoughtWorks.QRCode.Codec.QRCodeEncoder.ENCODE_MODE.BYTE + 'ElseIf encoding = "1" Then + ' qrCodeEncoder.QRCodeEncodeMode = ThoughtWorks.QRCode.Codec.QRCodeEncoder.ENCODE_MODE.ALPHA_NUMERIC + 'ElseIf encoding = "2" Then + ' qrCodeEncoder.QRCodeEncodeMode = ThoughtWorks.QRCode.Codec.QRCodeEncoder.ENCODE_MODE.NUMERIC + ' Try + ' version = Convert.ToInt16("1") + ' qrCodeEncoder.QRCodeVersion = version + ' Catch ex As Exception + + ' End Try + 'End If + 'errorCorrect = "1" + 'If errorCorrect = "1" Then + ' qrCodeEncoder.QRCodeErrorCorrect = ThoughtWorks.QRCode.Codec.QRCodeEncoder.ERROR_CORRECTION.L + 'ElseIf errorCorrect = "2" Then + ' qrCodeEncoder.QRCodeErrorCorrect = ThoughtWorks.QRCode.Codec.QRCodeEncoder.ERROR_CORRECTION.M + 'ElseIf errorCorrect = "3" Then + ' qrCodeEncoder.QRCodeErrorCorrect = ThoughtWorks.QRCode.Codec.QRCodeEncoder.ERROR_CORRECTION.Q + 'ElseIf errorCorrect = "4" Then + ' qrCodeEncoder.QRCodeErrorCorrect = ThoughtWorks.QRCode.Codec.QRCodeEncoder.ERROR_CORRECTION.H + 'End If + + If Rect.Format = "" Then Rect.Format = "{DATA}" + Rect.Format = Rect.Format.Replace("{DATA}", "{QR1}") + Rect.Format = Rect.Format.Replace("{QR}", "{QR1}") '//151029 + + + + '//151029 qr코드버그처리 + Dim PrintQRCODE As String = Rect.Format.Replace("{QR1}", QRCODE1) + PrintQRCODE = PrintQRCODE.Replace("{QR2}", QRCODE2) + PrintQRCODE = PrintQRCODE.Replace("{QR3}", QRCODE3) + PrintQRCODE = PrintQRCODE.Replace("{QR4}", QRCODE4) + PrintQRCODE = PrintQRCODE.Replace("{번호}", 일련번호) + If PrintQRCODE <> "" Then '//사용자가 입력한 데이터가 있다. + + 'Ga.DrawString(QRCODE, New Font("arial", 30), Brushes.Black, 100, 100) + + qrCodeEncoder1.QRCodeBackgroundColor = Rect.bColor + qrCodeEncoder1.QRCodeForegroundColor = Rect.fColor + image = qrCodeEncoder1.Encode(PrintQRCODE, Ga.DpiX, Ga.DpiY) Dim NewSX As Single = Rect.X @@ -1678,110 +1800,15 @@ Public Class Defalut_PrintForm End If If Rect.Width = 0 OrElse Rect.Height = 0 Then - Ga.DrawImage(Image, NewSX, NewSY) + Ga.DrawImage(image, NewSX, NewSY) Else - Ga.DrawImage(Image, NewSX, NewSY, Rect.Width, Rect.Height) + Ga.DrawImage(image, NewSX, NewSY, Rect.Width, Rect.Height) End If - End If - End If - Next - Catch ex As Exception + Next + End If - End Try - I = 0 - '//QR코드를 그린다. - Try - '//QR코드를 그린다. - For Each Rect As S_QRCode In Me.Draw_QRcode.Items - 'Dim scale As Int16 - ' Dim version As Int16 - Dim image As Image - Dim data As String = "" - ' Dim errorCorrect As String - Dim qrCodeEncoder1 As New ThoughtWorks.QRCode.Codec.QRCodeEncoder() - ' Dim encoding As String - - - qrCodeEncoder1.QRCodeEncodeMode = CInt(Rect.Encoding) - qrCodeEncoder1.QRCodeErrorCorrect = CInt(Rect.CLeve) - qrCodeEncoder1.QRCodeVersion = Rect.Version - qrCodeEncoder1.QRCodeScale = Rect.Size - - 'encoding = "3" - 'If encoding = "3" Then - ' qrCodeEncoder.QRCodeEncodeMode = ThoughtWorks.QRCode.Codec.QRCodeEncoder.ENCODE_MODE.BYTE - 'ElseIf encoding = "1" Then - ' qrCodeEncoder.QRCodeEncodeMode = ThoughtWorks.QRCode.Codec.QRCodeEncoder.ENCODE_MODE.ALPHA_NUMERIC - 'ElseIf encoding = "2" Then - ' qrCodeEncoder.QRCodeEncodeMode = ThoughtWorks.QRCode.Codec.QRCodeEncoder.ENCODE_MODE.NUMERIC - ' Try - ' version = Convert.ToInt16("1") - ' qrCodeEncoder.QRCodeVersion = version - ' Catch ex As Exception - - ' End Try - 'End If - 'errorCorrect = "1" - 'If errorCorrect = "1" Then - ' qrCodeEncoder.QRCodeErrorCorrect = ThoughtWorks.QRCode.Codec.QRCodeEncoder.ERROR_CORRECTION.L - 'ElseIf errorCorrect = "2" Then - ' qrCodeEncoder.QRCodeErrorCorrect = ThoughtWorks.QRCode.Codec.QRCodeEncoder.ERROR_CORRECTION.M - 'ElseIf errorCorrect = "3" Then - ' qrCodeEncoder.QRCodeErrorCorrect = ThoughtWorks.QRCode.Codec.QRCodeEncoder.ERROR_CORRECTION.Q - 'ElseIf errorCorrect = "4" Then - ' qrCodeEncoder.QRCodeErrorCorrect = ThoughtWorks.QRCode.Codec.QRCodeEncoder.ERROR_CORRECTION.H - 'End If - - If Rect.Format = "" Then Rect.Format = "{DATA}" - Rect.Format = Rect.Format.Replace("{DATA}", "{QR1}") - Rect.Format = Rect.Format.Replace("{QR}", "{QR1}") '//151029 - - - - '//151029 qr코드버그처리 - Dim PrintQRCODE As String = Rect.Format.Replace("{QR1}", QRCODE1) - PrintQRCODE = PrintQRCODE.Replace("{QR2}", QRCODE2) - PrintQRCODE = PrintQRCODE.Replace("{QR3}", QRCODE3) - PrintQRCODE = PrintQRCODE.Replace("{QR4}", QRCODE4) - PrintQRCODE = PrintQRCODE.Replace("{번호}", 일련번호) - If PrintQRCODE <> "" Then '//사용자가 입력한 데이터가 있다. - - 'Ga.DrawString(QRCODE, New Font("arial", 30), Brushes.Black, 100, 100) - - qrCodeEncoder1.QRCodeBackgroundColor = Rect.bColor - qrCodeEncoder1.QRCodeForegroundColor = Rect.fColor - image = qrCodeEncoder1.Encode(PrintQRCODE, Ga.DpiX, Ga.DpiY) - - - Dim NewSX As Single = Rect.X - Dim NewSY As Single = Rect.Y - - If RowIndex > 0 Then '//연속출력일때에는 줄구분 값을 사용한다. - NewSX += SetForm.MyProperty_Paper.연속여백x * (dummycnt - RowIndex * SetForm.MyProperty_Paper.분리갯수) - NewSY += SetForm.MyProperty_Paper.연속여백y * (dummycnt - RowIndex * SetForm.MyProperty_Paper.분리갯수) - Else - NewSX += SetForm.MyProperty_Paper.연속여백x * dummycnt - NewSY += SetForm.MyProperty_Paper.연속여백y * dummycnt - End If - - NewSX += RowOffsetX - NewSY += RowOffsetY - - If Print Then - NewSX += +SetForm.MyProperty_Paper.출력여백X - NewSY += +SetForm.MyProperty_Paper.출력여백Y - End If - - If Rect.Width = 0 OrElse Rect.Height = 0 Then - Ga.DrawImage(image, NewSX, NewSY) - Else - Ga.DrawImage(image, NewSX, NewSY, Rect.Width, Rect.Height) - End If - - End If - Next Catch ex As Exception End Try @@ -2115,7 +2142,14 @@ Public Class Defalut_PrintForm '//상태를 읽어서 바로 적용한다. Tobj.Location = New Point(pos(0), pos(1)) Tobj.Size = New Size(pos(2), pos(3)) - Tobj.Font = New Font(font(0), font(1), IIf(font(3).ToUpper = "TRUE", FontStyle.Bold, FontStyle.Regular), GraphicsUnit.Point) + + Dim fStyle As FontStyle = FontStyle.Regular + If font(2).ToUpper() = "TRUE" Then fStyle = fStyle Or FontStyle.Underline + If font(3).ToUpper() = "TRUE" Then fStyle = fStyle Or FontStyle.Bold + If font(4).ToUpper() = "TRUE" Then fStyle = fStyle Or FontStyle.Italic + + + Tobj.Font = New Font(font(0), font(1), fStyle, GraphicsUnit.Point) Tobj.WordWidth = font(5) Tobj.WordHeight = font(6) Tobj.WordSpace = Arinini.Read(StyleName, Tobj.Name & "space", 0) @@ -2136,7 +2170,13 @@ Public Class Defalut_PrintForm '//상태를 읽어서 바로 적용한다. Tobj.Location = New Point(pos(0), pos(1)) Tobj.Size = New Size(pos(2), pos(3)) - Tobj.Font = New Font(font(0), font(1), IIf(font(3).ToUpper = "TRUE", FontStyle.Bold, FontStyle.Regular), GraphicsUnit.Point) + + Dim fStyle As FontStyle = FontStyle.Regular + If font(2).ToUpper() = "TRUE" Then fStyle = fStyle Or FontStyle.Underline + If font(3).ToUpper() = "TRUE" Then fStyle = fStyle Or FontStyle.Bold + If font(4).ToUpper() = "TRUE" Then fStyle = fStyle Or FontStyle.Italic + + Tobj.Font = New Font(font(0), font(1), fStyle, GraphicsUnit.Point) Tobj.WordWidth = font(5) Tobj.WordHeight = font(6) Tobj.WordSpace = Arinini.Read(StyleName, Tobj.Name & "space", 0) @@ -2395,7 +2435,11 @@ Public Class Defalut_PrintForm font = DR(0)(1).ToString.Split(",") Tobj.WordWidth = font(5) Tobj.WordHeight = font(6) - Tobj.Font = New Font(font(0), font(1), IIf(font(3).ToUpper = "TRUE", FontStyle.Bold, FontStyle.Regular), GraphicsUnit.Point) + Dim fStyle As FontStyle = FontStyle.Regular + If font(2).ToUpper() = "TRUE" Then fStyle = fStyle Or FontStyle.Underline + If font(3).ToUpper() = "TRUE" Then fStyle = fStyle Or FontStyle.Bold + If font(4).ToUpper() = "TRUE" Then fStyle = fStyle Or FontStyle.Italic + Tobj.Font = New Font(font(0), font(1), fStyle, GraphicsUnit.Point) ' MsgBox(font(0)) End If @@ -2454,7 +2498,11 @@ Public Class Defalut_PrintForm font = DR(0)(1).ToString.Split(",") Tobj.WordWidth = font(5) Tobj.WordHeight = font(6) - Tobj.Font = New Font(font(0), font(1), IIf(font(3).ToUpper = "TRUE", FontStyle.Bold, FontStyle.Regular), GraphicsUnit.Point) + Dim fStyle As FontStyle = FontStyle.Regular + If font(2).ToUpper() = "TRUE" Then fStyle = fStyle Or FontStyle.Underline + If font(3).ToUpper() = "TRUE" Then fStyle = fStyle Or FontStyle.Bold + If font(4).ToUpper() = "TRUE" Then fStyle = fStyle Or FontStyle.Italic + Tobj.Font = New Font(font(0), font(1), fStyle, GraphicsUnit.Point) ' MsgBox(font(0)) End If @@ -3063,7 +3111,7 @@ Public Class Defalut_PrintForm Tobj = Nothing For i As Integer = 0 To Me.AllLabels.GetUpperBound(0) - If Me.AllLabels(i).visible AndAlso Me.AllLabels(i).Text <> "" AndAlso _ + If Me.AllLabels(i).visible AndAlso Me.AllLabels(i).Text <> "" AndAlso ((e.X >= Me.AllLabels(i).Left) And e.X <= (Me.AllLabels(i).Left + Me.AllLabels(i).GetSize.Width)) _ AndAlso ((e.Y >= Me.AllLabels(i).Top) AndAlso (e.Y <= (Me.AllLabels(i).Top + Me.AllLabels(i).GetSize.Height))) Then Tobj = Me.AllLabels(i) @@ -3158,7 +3206,7 @@ Public Class Defalut_PrintForm If Me.DMode = E_DesignMode.Text Then Dim Tobj As CEpole.C_label = Nothing For i As Integer = 0 To Me.AllLabels.GetUpperBound(0) - If Me.AllLabels(i).visible AndAlso Me.AllLabels(i).Text <> "" AndAlso _ + If Me.AllLabels(i).visible AndAlso Me.AllLabels(i).Text <> "" AndAlso ((e.X >= Me.AllLabels(i).Left) And e.X <= (Me.AllLabels(i).Left + Me.AllLabels(i).GetSize.Width)) _ AndAlso ((e.Y >= Me.AllLabels(i).Top) AndAlso (e.Y <= (Me.AllLabels(i).Top + Me.AllLabels(i).GetSize.Height))) Then Tobj = Me.AllLabels(i) @@ -3205,7 +3253,7 @@ Public Class Defalut_PrintForm RaiseEvent StatusMessage(">> Create DataView" & DataFilter, e_EventMessage.Normal) If Dv.Count <= 0 Then '//데이터가없다면 - MsgBox(StyleList(SelIndex).Desc & "에 해당하는 데이터가존재하지 않습니다" & vbCrLf & _ + MsgBox(StyleList(SelIndex).Desc & "에 해당하는 데이터가존재하지 않습니다" & vbCrLf & vbCrLf & "다른 스타일을 선택하세요", MsgBoxStyle.Information, "확인") Me.v_picturebox1.Image = Nothing Else @@ -3443,7 +3491,7 @@ Public Class Defalut_PrintForm ' ' Me.bt_SC.ForeColor = Color.Red ' Me.bt_SL.ForeColor = Color.Black End Select - + If Not bt_SL2 Is Nothing Then Me.bt_SL2.ForeColor = bt_SL.ForeColor End With diff --git a/Project_fp5/DrawShape.vb b/Project_fp5/DrawShape.vb index aa9e79f..734f014 100644 --- a/Project_fp5/DrawShape.vb +++ b/Project_fp5/DrawShape.vb @@ -45,6 +45,7 @@ Public Class Shape_Circle End Sub Public Function Count() As Short Try + If Me.Draw_Circle Is Nothing Then Return 0 Return Me.Draw_Circle.GetUpperBound(0) + 1 Catch ex As Exception Return 0 @@ -110,6 +111,7 @@ Public Class Shape_Box End Sub Public Function Count() As Short Try + If Me.Draw_Box Is Nothing Then Return 0 Return Me.Draw_Box.GetUpperBound(0) + 1 Catch ex As Exception Return 0 @@ -176,6 +178,7 @@ Public Class Shape_QRcode End Sub Public Function Count() As Short Try + If Me.Draw_QRcode Is Nothing Then Return 0 Return Me.Draw_QRcode.GetUpperBound(0) + 1 Catch ex As Exception Return 0 @@ -238,6 +241,7 @@ Public Class Shape_line End Sub Public Function Count() As Short Try + If Me.Draw_line Is Nothing Then Return 0 Return Me.Draw_line.GetUpperBound(0) + 1 Catch ex As Exception Return 0 @@ -302,6 +306,7 @@ Public Class Shape_Image End Sub Public Function Count() As Short Try + If Me.Draw_Image Is Nothing Then Return 0 Return Me.Draw_Image.GetUpperBound(0) + 1 Catch ex As Exception Return 0 diff --git a/Project_fp5/Frm_ConvertINI.vb b/Project_fp5/Frm_ConvertINI.vb index cf88ae8..b323681 100644 --- a/Project_fp5/Frm_ConvertINI.vb +++ b/Project_fp5/Frm_ConvertINI.vb @@ -4,6 +4,8 @@ Dim StyleLista() As C_Epole.SStyle Public Function GetFileCount() As Short + If Me.allini Is Nothing Then Return 0 + Try Return Me.allini.GetUpperBound(0) Catch ex As Exception