Hi all,<br><br>I am having trouble displaying accentuated characters in vtkTextActor with vtk5.6.0 under MS-VC++2005.<br>Here below is an exemple that reproduces the problem, by printing the same string than contains accents &quot;é,è,à&quot;.<br>
When I run this small prog, as a result I obtain that accentuated characters (é,è...) are :<br>- correctly displayed when used in a vtkScalarBarActor title,<br>- not displayed when incorporated in vtkTextActor.<br><br>Any idea where does this come from and how to solve it?<br>
<br>As an additional comment, this used to work correctly under vtk5.0.x, it is only broken from vtk5.2.x up to vtk5.6.0.<br>
<br>Thanks<br>JD<br><br><br>//////////////////////////////////////////////////////<br>////////////////// vtkTextActor bug //////////////////<br>//////////////////////////////////////////////////////<br>#include &quot;vtkActor.h&quot;<br>
#include &quot;vtkRenderer.h&quot;<br>#include &quot;vtkRenderWindow.h&quot;<br>#include &quot;vtkRenderWindowInteractor.h&quot;<br>#include &quot;vtkCamera.h&quot;<br>#include &quot;vtkTextProperty.h&quot;<br>#include &quot;vtkTextActor.h&quot;<br>
#include &quot;vtkActor2D.h&quot;<br>#include &quot;vtkLookupTable.h&quot;<br>#include &quot;vtkScalarBarActor.h&quot;<br><br>int main()<br>{<br>    // Tested string<br>    char text[] = &quot;Test: é, è, à&quot;;<br><br>
    // Create an example text actor<br>    vtkTextActor *textActor = vtkTextActor::New();<br>    textActor-&gt;SetInput(text);<br>    textActor-&gt;GetPositionCoordinate()-&gt;SetCoordinateSystemToNormalizedViewport();<br>
    textActor-&gt;SetPosition(0.50,0.50);<br>    textActor-&gt;GetTextProperty()-&gt;SetFontSize(30);<br>    textActor-&gt;GetTextProperty()-&gt;SetJustificationToCentered();<br>    textActor-&gt;GetTextProperty()-&gt;SetColor(1, 0, 0);<br>
<br>    // Create a Lut<br>    vtkLookupTable *Lut = vtkLookupTable::New();<br>    Lut-&gt;SetHueRange (160.0/240.0, 0.0);<br>    Lut-&gt;SetSaturationRange (1.0, 1.0);<br>    Lut-&gt;SetValueRange (1.0, 1.0);<br>    Lut-&gt;SetTableRange (0,100);<br>
    Lut-&gt;Build();<br><br>    // Create a ScalarBarActor<br>    vtkScalarBarActor *scalarBar = vtkScalarBarActor::New();<br>    scalarBar-&gt;SetTitle(text);<br>    scalarBar-&gt;SetLookupTable(Lut);<br>    scalarBar-&gt;SetHeight(0.5);<br>
    scalarBar-&gt;SetWidth(0.1);<br>    scalarBar-&gt;SetPosition(0.10,0.01);<br>    scalarBar-&gt;SetPosition2(0.80,0.1);<br>    scalarBar-&gt;SetOrientationToHorizontal();<br><br>    // Create the graphics structure<br>
    vtkRenderer *ren = vtkRenderer::New();<br>    vtkRenderWindow *renWin = vtkRenderWindow::New();<br>    renWin-&gt;AddRenderer(ren);<br>    renWin-&gt;SetSize(600, 600);<br>    vtkRenderWindowInteractor *iren = vtkRenderWindowInteractor::New();<br>
    iren-&gt;SetRenderWindow(renWin);<br><br>    // Add the actors to the renderer, set the background and size<br>    ren-&gt;AddActor(textActor);<br>    ren-&gt;AddActor(scalarBar);<br>    ren-&gt;SetBackground(0.1, 0.2, 0.4);<br>
    ren-&gt;ResetCamera();<br>    ren-&gt;GetActiveCamera()-&gt;Zoom(1.0);<br>    renWin-&gt;Render();<br><br>    // Starts the event loop<br>    iren-&gt;Start();<br><br>    // Do some cleaning<br>    textActor-&gt;Delete();<br>
    Lut-&gt;Delete();<br>    scalarBar-&gt;Delete();<br>    ren-&gt;Delete();<br>    renWin-&gt;Delete();<br>    iren-&gt;Delete();<br><br>    return 0;<br>}<br>