netcore net istringlocalizer español asp and asp.net resources globalization

istringlocalizer - ¿Cómo usar el recurso de imagen en el sitio web asp.net?



net core culture (3)

Tengo un sitio de CA que utiliza muchas imágenes con texto inglés incrustado.

¿Cómo puedo usar un archivo de recursos estándar para intercambiar imágenes según el idioma?

Tengo un archivo resx en mi directorio App_GlobalResources, pero parece que no puedo conectarlo a un asp: control de imagen para la imageurl correctamente.

Ideas?

ACTUALIZAR:

Para obtener más información, aquí está el código de etiqueta de imagen:

<asp:image runat="server" ID="img2" ImageUrl="<%$Resources: Resource, cs_logo %>" />

El resultado en el lado del cliente es:

<img id="img2" src="System.Drawing.Bitmap" style="border-width:0px;" />

Tenga en cuenta que la fuente obviamente no es lo que esperaba ...


Si está usando un archivo de recursos globales, debe agregarlo como este

<img id="WelocmeICon" runat="server" alt="welcome icon" src="<%$resources:NmcResource,WelcomeIcon %>" />

y porque uso el control img, agregué runatserver y id para ello


Una cosa que podría tratar de hacer es crear un simple "servicio de imágenes" que pueda mostrar la imagen en el formato adecuado a partir de los recursos incorporados.

No tiene que crear el servicio web en sí, simplemente crea una página aspx y en el código detrás de usted cambia el Response.ContentType para que sea "image / png" o el formato que prefiera. Esto también requiere un parámetro get en la URL de la página, pero que se puede filtrar fácilmente. Por lo tanto, el método Page_Load de su servicio de imágenes podría verse más o menos así:

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load Dim FinalBitmap As Bitmap Dim strRenderSource As String Dim msStream As New MemoryStream() strRenderSource = Request.Params("ImageName").ToString() '' Write your code here that gets the image from the app resources. FinalBitmap = New Bitmap(Me.Resources(strRenderSource)) FinalBitmap.Save(msStream, ImageFormat.Png) Response.Clear() Response.ContentType = "image/png" msStream.WriteTo(Response.OutputStream) If Not IsNothing(FinalBitmap) Then FinalBitmap.Dispose() End Sub

Luego de vuelta en su página ASPX tiene ...

<asp:Image ImageUrl="http://localhost/GetImage.aspx?ImageName=Image1" />

Ah, y no te olvides de importar System.Drawing y System.Drawing.Imaging en la página.


puede almacenar la url de la imagen en su archivo de recursos y usar el siguiente código en línea en el control

<asp:Image ImageUrl="<%$resources:Image1 %>" />

Actualizar

este enlace podría ser útil en lo que estás tratando de lograr

o

También puede intentar almacenar el recurso como una cadena y establecer el valor en la ubicación de la url en lugar de almacenar la imagen en el archivo de recursos.