PageSettings.Color プロパティ
アセンブリ: System.Drawing (system.drawing.dll 内)
構文
ページを色付きで印刷する場合は true。それ以外の場合は false。既定値はプリンタによって決定されます。
解説
PrinterSettings.SupportsColor プロパティを使用して、プリンタがカラー印刷をサポートしているかどうかを判断できます。プリンタがカラー印刷をサポートしていても、カラー印刷は行わない場合は、Color プロパティを false に設定します。既定値は true です。
文書を印刷するコード例を次に示します。カラー プリンタの場合は、先頭ページがカラーで印刷されます。この例では、printDoc という名前の PrintDocument 変数が既に作成されており、PrintPage イベントと QueryPageSettings イベントが処理されることが必要条件となります。
この例では、System.Drawing 名前空間と System.Drawing.Printing 名前空間を使用します。
Private Sub MyButtonPrint_OnClick(ByVal sender As Object, ByVal e As System.EventArgs) ' Set the printer name and ensure it is valid. If not, provide a message to the user. printDoc.PrinterSettings.PrinterName = "\\mynetworkprinter" If printDoc.PrinterSettings.IsValid Then ' If the printer supports printing in color, then override the printer's default behavior. if printDoc.PrinterSettings.SupportsColor then ' Set the page default's to not print in color. printDoc.DefaultPageSettings.Color = False End If ' Provide a friendly name, set the page number, and print the document. printDoc.DocumentName = "My Presentation" currentPageNumber = 1 printDoc.Print() Else MessageBox.Show("Printer is not valid") End If End Sub Private Sub MyPrintQueryPageSettingsEvent(ByVal sender As Object, ByVal e As QueryPageSettingsEventArgs) ' Determines if the printer supports printing in color. If printDoc.PrinterSettings.SupportsColor Then ' If the printer supports color printing, use color. If currentPageNumber = 1 Then e.PageSettings.Color = True End If End If End Sub
private void MyButtonPrint_OnClick(object sender, System.EventArgs e) { // Set the printer name and ensure it is valid. If not, provide a message to the user. printDoc.PrinterSettings.PrinterName = "\\mynetworkprinter"; if (printDoc.PrinterSettings.IsValid) { // If the printer supports printing in color, then override the printer's default behavior. if (printDoc.PrinterSettings.SupportsColor) { // Set the page default's to not print in color. printDoc.DefaultPageSettings.Color = false; } // Provide a friendly name, set the page number, and print the document. printDoc.DocumentName = "My Presentation"; currentPageNumber = 1; printDoc.Print(); } else { MessageBox.Show("Printer is not valid"); } } private void MyPrintQueryPageSettingsEvent(object sender, QueryPageSettingsEventArgs e) { // Determines if the printer supports printing in color. if (printDoc.PrinterSettings.SupportsColor) { // If the printer supports color printing, use color. if (currentPageNumber == 1 ) { e.PageSettings.Color = true; } } }
private: void MyButtonPrint_OnClick( Object^ sender, System::EventArgs^ e ) { // Set the printer name and ensure it is valid. If not, provide a message to the user. printDoc->PrinterSettings->PrinterName = "\\mynetworkprinter"; if ( printDoc->PrinterSettings->IsValid ) { // If the printer supports printing in color, then override the printer's default behavior. if ( printDoc->PrinterSettings->SupportsColor ) { // Set the page default's to not print in color. printDoc->DefaultPageSettings->Color = false; } // Provide a friendly name, set the page number, and print the document. printDoc->DocumentName = "My Presentation"; currentPageNumber = 1; printDoc->Print(); } else { MessageBox::Show( "Printer is not valid" ); } } void MyPrintQueryPageSettingsEvent( Object^ sender, QueryPageSettingsEventArgs^ e ) { // Determines if the printer supports printing in color. if ( printDoc->PrinterSettings->SupportsColor ) { // If the printer supports color printing, use color. if ( currentPageNumber == 1 ) { e->PageSettings->Color = true; } } }
private void myButtonPrint_OnClick(Object sender, System.EventArgs e) { // Set the printer name and ensure it is valid. If not, // provide a message to the user. printDoc.get_PrinterSettings().set_PrinterName("\\mynetworkprinter"); if (printDoc.get_PrinterSettings().get_IsValid()) { // If the printer supports printing in color, then // override the printer's default behavior. if (printDoc.get_PrinterSettings().get_SupportsColor()) { // Set the page default's to not print in color. printDoc.get_DefaultPageSettings().set_Color(false); } // Provide a friendly name, set the page number, and print // the document. printDoc.set_DocumentName("My Presentation"); currentPageNumber = 1; printDoc.Print(); } else { MessageBox.Show("Printer is not valid"); } } //myButtonPrint_OnClick private void MyPrintQueryPageSettingsEvent(Object sender, QueryPageSettingsEventArgs e) { // Determines if the printer supports printing in color. if (printDoc.get_PrinterSettings().get_SupportsColor()) { // If the printer supports color printing, use color. if (currentPageNumber == 1) { e.get_PageSettings().set_Color(true); } } } //MyPrintQueryPageSettingsEvent
Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。
参照
- PageSettings.Color プロパティのページへのリンク