|
|||||
画面のハードコピーを印刷するライブラリ(VB6/VB.NET/C#.NET)とサンプルソース ダウンロード 画面イメージ 使用例(VB6) 使用例(VB.NET) 使用例(C#.NET) ==================================================================== 【タイトル 】画面ハードコピー印刷DLL(VB6/VB.NET/C#.NET) 【Version 】2.0.0.2 【ファイル 】NonHardCopy.zip 【ファイルの中身 】NonHCopyVb6.dll、NonHCopyNet.dll、ReadMe.txt 【動作確認 】Windows7/XP/2000 【必要ソフト 】VB6ランタイム(VB6版) 【必要ソフト 】Microsoft .NET Framework Version 2.0(.NET版) 【ソフト種別 】フリーソフト 【作者/著作権者 】のん 【作者への連絡先 】http://homepage2.nifty.com/nonnon/ ==================================================================== 1.はじめに 本プログラムをダウンロード頂きまして誠にありがとうございます。 本プログラムは、画面のハードコピーを印刷するライブラリ(DLL)です。 画面のハードコピーを簡易帳票として印刷する際にご使用ください。 サンプルアプリケーションのソースコードを同梱していますので、すぐ にご試用頂けると思います。 2.インストール方法/アンインストール方法 本プログラムはインストール操作が必要ありません。 アンインストール操作も必要ありませんので、本プログラム一式を削除 してください。 NonMsgVb6.dllを使用する場合はVB6がインストールされている必要があ ります。NonMsgNet.dllを使用する場合はMicrosoft .NET Framework Ve rsion 2.0以上がインストールされている必要があります。 3.ご使用方法 サンプルアプリケーションのソースコードを同梱していますので参考に してください。 4.著作権・ライセンス 本プログラムの全ての著作権は「のん」が所有しています。 本プログラムを転載する場合は著作権所有者の許可が必要となります。 (NonSoftの紹介リンクは問題ありませんので宜しくお願いします) 著作権所有者が許可したサイトでのみダウンロードが可能となります。 再配布は禁止させて頂きます。商用利用についての制限はありません。 5.免責事項 本プログラムが原因による損害・問題に対し一切の責任を負いません。 ご利用者の責任の範囲内でお使いください。 6.作者への問合せについて 作者への問合せはメールのみとさせて頂きます。問合せ内容によっては 回答出来ない場合もございますので予めご了承願います。また、作者不 在時または問い合わせ数が多い場合など、回答に日数がかかる場合がご ざいますので予めご了承願います。 <画面イメージ>
<使用例(VB6)>
' ハードコピーオブジェクト
Private objHardCopy As Object
Private Sub Form_Load()
On Error Resume Next
' NonHCopyVb6.dllの存在チェック
ChDir App.Path
If CreateObject("NonHCopyVb6.HardCopyClass") Is Nothing Then
If Len(Dir("NonHCopyVb6.dll")) <> 0 Then
' NonHCopyVb6.dllのレジストリ登録
Shell "regsvr32 /s NonHCopyVb6.dll", vbHide
Else
' NonHCopyVb6.dllをSampleAp.exeと同じフォルダに置いてください。
MsgBox _
"NonHCopyVb6.dllが見つかりませんでした。" & vbCrLf & vbCrLf & _
"NonHCopyVb6.dllを" & vbCrLf & "[" & App.Path & "]" & vbCrLf & _
"に置いてください。"
End
End If
End If
' ハードコピーオブジェクト生成
Set objHardCopy = CreateObject("NonHCopyVb6.HardCopyClass")
End Sub
Private Sub Command1_Click()
' 通常使うプリンタへのアクティブウィンドウのハードコピー
objHardCopy.HardCopy True
End Sub
Private Sub Command2_Click()
' 用紙方向を横向きに設定
Printer.Orientation = vbPRORLandscape
' 用紙サイズをA4に設定
Printer.PaperSize = vbPRPSA4
' 通常使うプリンタへのスクリーン全体のハードコピー
objHardCopy.HardCopy False, Printer
End Sub
Private Sub Command3_Click()
' 使用可能なプリンターを検索
Dim objPrinter As Printer
For Each objPrinter In Printers
If objPrinter.DeviceName = "プリンタ名をここに入力" Then
' 指定のプリンタがあれば設定
Set Printer = objPrinter
End If
Next
' 用紙方向を横向きに設定
Printer.Orientation = vbPRORLandscape
' 用紙サイズをA3に設定
Printer.PaperSize = vbPRPSA3
'指定のプリンタへのスクリーン全体のハードコピー
' 余白(左:15ミリ、上:20ミリ、右:25ミリ、下:30ミリ)
objHardCopy.HardCopy False, Printer, 15, 20, 25, 30
End Sub
<使用例(VB.NET)>
Public Class Form1
' ハードコピーオブジェクト
Dim objHardCopy As New NonHCopyNet.HardCopyClass
Private Sub Button1_Click( _
ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
' 通常使うプリンタへのアクティブウィンドウのハードコピー
objHardCopy.HardCopy(True)
End Sub
Private Sub Button2_Click( _
ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
' 用紙方向を横向きに設定
Dim objPrinter As New Printing.PrintDocument
objPrinter.DefaultPageSettings.Landscape = True
' 用紙サイズをA4に設定
For Each psz As Printing.PaperSize In objPrinter.PrinterSettings.PaperSizes
If psz.Kind = Printing.PaperKind.A4 Then
objPrinter.DefaultPageSettings.PaperSize = psz
Exit For
End If
Next
' 通常使うプリンタへのスクリーン全体のハードコピー
objHardCopy.HardCopy(False, objPrinter)
End Sub
Private Sub Button3_Click( _
ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
' 印刷するプリンタを指定
Dim objPrinter As New Printing.PrintDocument
objPrinter.PrinterSettings.PrinterName = "プリンタ名をここに入力"
' 用紙方向を横向きに設定
objPrinter.DefaultPageSettings.Landscape = True
' 用紙サイズをA3に設定
For Each psz As Printing.PaperSize In objPrinter.PrinterSettings.PaperSizes
If psz.Kind = Printing.PaperKind.A3 Then
objPrinter.DefaultPageSettings.PaperSize = psz
Exit For
End If
Next
'指定のプリンタへのスクリーン全体のハードコピー
' 余白(左:15ミリ、上:20ミリ、右:25ミリ、下:30ミリ)
objHardCopy.HardCopy(False, objPrinter, 15, 20, 25, 30)
End Sub
End Class
<使用例(C#.NET)>
using System.Drawing.Printing;
public partial class Form1 : Form
{
// ハードコピーオブジェクト
NonHCopyNet.HardCopyClass objHardCopy = new NonHCopyNet.HardCopyClass();
private void Button1_Click(object sender, EventArgs e)
{
// 通常使うプリンタへのアクティブウィンドウのハードコピー
objHardCopy.HardCopy(true);
}
private void Button2_Click(object sender, EventArgs e)
{
// 用紙方向を横向きに設定
PrintDocument objPrinter = new PrintDocument();
objPrinter.DefaultPageSettings.Landscape = true;
// 用紙サイズをA4に設定
foreach (PaperSize psz in objPrinter.PrinterSettings.PaperSizes)
{
if (psz.Kind == PaperKind.A4)
{
objPrinter.DefaultPageSettings.PaperSize = psz;
break;
}
}
// 通常使うプリンタへのスクリーン全体のハードコピー
objHardCopy.HardCopy(false, objPrinter);
}
private void Button3_Click(object sender, EventArgs e)
{
// 印刷するプリンタを指定
PrintDocument objPrinter = new PrintDocument();
objPrinter.PrinterSettings.PrinterName = "プリンタ名をここに入力";
// 用紙方向を横向きに設定
objPrinter.DefaultPageSettings.Landscape = true;
// 用紙サイズをA3に設定
foreach (PaperSize psz in objPrinter.PrinterSettings.PaperSizes)
{
if (psz.Kind == PaperKind.A3)
{
objPrinter.DefaultPageSettings.PaperSize = psz;
break;
}
}
// 指定のプリンタへのスクリーン全体のハードコピー
// 余白(左:15ミリ、上:20ミリ、右:25ミリ、下:30ミリ)
objHardCopy.HardCopy(false, objPrinter, 15, 20, 25, 30);
}
}
|