SetLanguage Method (GdPicturePDF)
In This Topic
Sets up the natural language used for text or for optional content in the currently loaded PDF document.
This language serves to support the accessibility of documents to users with disabilities, specifically to enable proper vocalization, for example, through a screen reader or other text-to-speech engines. For further assistance, please refer to the PDF Reference, Section "Natural Language Specification".
Syntax
Parameters
- Language
- A new value of the language identifier as a string. The empty string indicates that the language is unknown.
Please refer to the PDF Reference, Section "Language Identifiers" for the proper syntax of language codes.
Return Value
A member of the GdPictureStatus enumeration. If the method has been successfully followed, then the return value is GdPictureStatus.OK.
We strongly recommend always checking this status first.
Example
How to set up a natural language to be used with the newly created tagged PDF document.
Dim caption As String = "Example: SetLanguage"
Using gdpicturePDF As GdPicturePDF = New GdPicturePDF()
If (gdpicturePDF.NewPDF(PdfConformance.PDF_UA_1) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.NewPage(PdfPageSizes.PdfPageSizeA4) = GdPictureStatus.OK) Then
gdpicturePDF.SetOrigin(PdfOrigin.PdfOriginTopLeft)
'This is required to have a valid PDF_UA document.
gdpicturePDF.SetTitle("My first PDF/UA document")
Dim fontResName As String = gdpicturePDF.AddTrueTypeFontU("Arial", False, False, True)
If (gdpicturePDF.GetStat() = GdPictureStatus.OK) AndAlso (gdpicturePDF.SetFillColor(Color.Blue) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.SetTextSize(16) = GdPictureStatus.OK) Then
Dim tagRootID As Integer = gdpicturePDF.GetTagRootID()
If (gdpicturePDF.GetStat() = GdPictureStatus.OK) AndAlso
(gdpicturePDF.SetLanguage("en-US") = GdPictureStatus.OK) Then
Dim tagParagraph As Integer = gdpicturePDF.NewTag(tagRootID, "P")
If gdpicturePDF.GetStat() = GdPictureStatus.OK Then
If (gdpicturePDF.BeginMarkedContentSequence(tagParagraph, "P") = GdPictureStatus.OK) AndAlso
(gdpicturePDF.DrawText(fontResName, 50, 50, "This is text in english that is tagged as paragraph!") = GdPictureStatus.OK) AndAlso
(gdpicturePDF.EndMarkedContent() = GdPictureStatus.OK) Then
Dim status As GdPictureStatus = gdpicturePDF.SaveToFile("test_tagged.pdf")
If status = GdPictureStatus.OK Then
MessageBox.Show("Your new PDF document has been successfully created.", caption)
Else
MessageBox.Show("The file can't be saved. Status: " + status.ToString(), caption)
End If
Else
MessageBox.Show("Tagging of the paragraph has failed with the status: " + gdpicturePDF.GetStat().ToString(), caption)
End If
Else
MessageBox.Show("The NewTag() method has failed with the status: " + gdpicturePDF.GetStat().ToString(), caption)
End If
Else
MessageBox.Show("Getting the root or setting the language has failed with the status: " + gdpicturePDF.GetStat().ToString(), caption)
End If
Else
MessageBox.Show("Setting text properties has failed with the status: " + gdpicturePDF.GetStat().ToString(), caption)
End If
gdpicturePDF.CloseDocument()
Else
MessageBox.Show("The new document can't be created. Status: " + gdpicturePDF.GetStat().ToString(), caption)
End If
End Using
string caption = "Example: SetLanguage";
using (GdPicturePDF gdpicturePDF = new GdPicturePDF())
{
if ((gdpicturePDF.NewPDF(PdfConformance.PDF_UA_1) == GdPictureStatus.OK) &&
(gdpicturePDF.NewPage(PdfPageSizes.PdfPageSizeA4) == GdPictureStatus.OK))
{
gdpicturePDF.SetOrigin(PdfOrigin.PdfOriginTopLeft);
//This is required to have a valid PDF_UA document.
gdpicturePDF.SetTitle("My first PDF/UA document");
string fontResName = gdpicturePDF.AddTrueTypeFontU("Arial", false, false, true);
if ((gdpicturePDF.GetStat() == GdPictureStatus.OK) &&
(gdpicturePDF.SetFillColor(Color.Blue) == GdPictureStatus.OK) &&
(gdpicturePDF.SetTextSize(16) == GdPictureStatus.OK))
{
int tagRootID = gdpicturePDF.GetTagRootID();
if ((gdpicturePDF.GetStat() == GdPictureStatus.OK) &&
(gdpicturePDF.SetLanguage("en-US") == GdPictureStatus.OK))
{
int tagParagraph = gdpicturePDF.NewTag(tagRootID, "P");
if (gdpicturePDF.GetStat() == GdPictureStatus.OK)
{
if ((gdpicturePDF.BeginMarkedContentSequence(tagParagraph, "P") == GdPictureStatus.OK) &&
(gdpicturePDF.DrawText(fontResName, 50, 50, "This is text in english that is tagged as paragraph!") == GdPictureStatus.OK) &&
(gdpicturePDF.EndMarkedContent() == GdPictureStatus.OK))
{
GdPictureStatus status = gdpicturePDF.SaveToFile("test_tagged.pdf");
if (status == GdPictureStatus.OK)
MessageBox.Show("Your new PDF document has been successfully created.", caption);
else
MessageBox.Show("The file can't be saved. Status: " + status.ToString(), caption);
}
else
MessageBox.Show("Tagging of the paragraph has failed with the status: " + gdpicturePDF.GetStat().ToString(), caption);
}
else
MessageBox.Show("The NewTag() method has failed with the status: " + gdpicturePDF.GetStat().ToString(), caption);
}
else
MessageBox.Show("Getting the root or setting the language has failed with the status: " + gdpicturePDF.GetStat().ToString(), caption);
}
else
MessageBox.Show("Setting text properties has failed with the status: " + gdpicturePDF.GetStat().ToString(), caption);
gdpicturePDF.CloseDocument();
}
else
MessageBox.Show("The new document can't be created. Status: " + gdpicturePDF.GetStat().ToString(), caption);
}
Example
How to set up a natural language to be used with the newly created tagged PDF document.
Dim caption As String = "Example: SetLanguage"
Using gdpicturePDF As GdPicturePDF = New GdPicturePDF()
If (gdpicturePDF.NewPDF(PdfConformance.PDF_UA_1) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.NewPage(PdfPageSizes.PdfPageSizeA4) = GdPictureStatus.OK) Then
gdpicturePDF.SetOrigin(PdfOrigin.PdfOriginTopLeft)
'This is required to have a valid PDF_UA document.
gdpicturePDF.SetTitle("My first PDF/UA document")
Dim fontResName As String = gdpicturePDF.AddTrueTypeFontU("Arial", False, False, True)
If (gdpicturePDF.GetStat() = GdPictureStatus.OK) AndAlso (gdpicturePDF.SetFillColor(Color.Blue) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.SetTextSize(16) = GdPictureStatus.OK) Then
Dim tagRootID As Integer = gdpicturePDF.GetTagRootID()
If (gdpicturePDF.GetStat() = GdPictureStatus.OK) AndAlso
(gdpicturePDF.SetLanguage("en-US") = GdPictureStatus.OK) Then
Dim tagParagraph As Integer = gdpicturePDF.NewTag(tagRootID, "P")
If gdpicturePDF.GetStat() = GdPictureStatus.OK Then
If (gdpicturePDF.BeginMarkedContentSequence(tagParagraph, "P") = GdPictureStatus.OK) AndAlso
(gdpicturePDF.DrawText(fontResName, 50, 50, "This is text in english that is tagged as paragraph!") = GdPictureStatus.OK) AndAlso
(gdpicturePDF.EndMarkedContent() = GdPictureStatus.OK) Then
Dim status As GdPictureStatus = gdpicturePDF.SaveToFile("test_tagged.pdf")
If status = GdPictureStatus.OK Then
MessageBox.Show("Your new PDF document has been successfully created.", caption)
Else
MessageBox.Show("The file can't be saved. Status: " + status.ToString(), caption)
End If
Else
MessageBox.Show("Tagging of the paragraph has failed with the status: " + gdpicturePDF.GetStat().ToString(), caption)
End If
Else
MessageBox.Show("The NewTag() method has failed with the status: " + gdpicturePDF.GetStat().ToString(), caption)
End If
Else
MessageBox.Show("Getting the root or setting the language has failed with the status: " + gdpicturePDF.GetStat().ToString(), caption)
End If
Else
MessageBox.Show("Setting text properties has failed with the status: " + gdpicturePDF.GetStat().ToString(), caption)
End If
gdpicturePDF.CloseDocument()
Else
MessageBox.Show("The new document can't be created. Status: " + gdpicturePDF.GetStat().ToString(), caption)
End If
End Using
string caption = "Example: SetLanguage";
using (GdPicturePDF gdpicturePDF = new GdPicturePDF())
{
if ((gdpicturePDF.NewPDF(PdfConformance.PDF_UA_1) == GdPictureStatus.OK) &&
(gdpicturePDF.NewPage(PdfPageSizes.PdfPageSizeA4) == GdPictureStatus.OK))
{
gdpicturePDF.SetOrigin(PdfOrigin.PdfOriginTopLeft);
//This is required to have a valid PDF_UA document.
gdpicturePDF.SetTitle("My first PDF/UA document");
string fontResName = gdpicturePDF.AddTrueTypeFontU("Arial", false, false, true);
if ((gdpicturePDF.GetStat() == GdPictureStatus.OK) &&
(gdpicturePDF.SetFillColor(Color.Blue) == GdPictureStatus.OK) &&
(gdpicturePDF.SetTextSize(16) == GdPictureStatus.OK))
{
int tagRootID = gdpicturePDF.GetTagRootID();
if ((gdpicturePDF.GetStat() == GdPictureStatus.OK) &&
(gdpicturePDF.SetLanguage("en-US") == GdPictureStatus.OK))
{
int tagParagraph = gdpicturePDF.NewTag(tagRootID, "P");
if (gdpicturePDF.GetStat() == GdPictureStatus.OK)
{
if ((gdpicturePDF.BeginMarkedContentSequence(tagParagraph, "P") == GdPictureStatus.OK) &&
(gdpicturePDF.DrawText(fontResName, 50, 50, "This is text in english that is tagged as paragraph!") == GdPictureStatus.OK) &&
(gdpicturePDF.EndMarkedContent() == GdPictureStatus.OK))
{
GdPictureStatus status = gdpicturePDF.SaveToFile("test_tagged.pdf");
if (status == GdPictureStatus.OK)
MessageBox.Show("Your new PDF document has been successfully created.", caption);
else
MessageBox.Show("The file can't be saved. Status: " + status.ToString(), caption);
}
else
MessageBox.Show("Tagging of the paragraph has failed with the status: " + gdpicturePDF.GetStat().ToString(), caption);
}
else
MessageBox.Show("The NewTag() method has failed with the status: " + gdpicturePDF.GetStat().ToString(), caption);
}
else
MessageBox.Show("Getting the root or setting the language has failed with the status: " + gdpicturePDF.GetStat().ToString(), caption);
}
else
MessageBox.Show("Setting text properties has failed with the status: " + gdpicturePDF.GetStat().ToString(), caption);
gdpicturePDF.CloseDocument();
}
else
MessageBox.Show("The new document can't be created. Status: " + gdpicturePDF.GetStat().ToString(), caption);
}
See Also