82 messaggi dal 01 novembre 2001
Ciao ragazzi,sto cercando di fa sovraporre un immagine a uno già esistente,ma con scarsi risultati.Ho provato con questo script preso da sito ma non funziona:

<%@ Page Language="C#" %>
<%@ import Namespace="System" %>
<%@ import Namespace="System.Drawing" %>
<%@ import Namespace="System.Drawing.Imaging" %>
<%@ import Namespace="System.Drawing.Drawing2D" %>

<script runat="server">
void Page_Load(object sender, EventArgs e) {
ImageTool(baseImageFile)
AddMark(timbro)
Save(pathcartella)
}

namespace ImageTool
{
public class ImageTool
{
private Image myImage;
private Graphics myGraphics;

public ImageTool(string baseImageFile)
{
myImage = Image.FromFile(baseImageFile);
myGraphics = Graphics.FromImage(myImage);
}

public void AddMark(string timbroFilePath, int alpha, int posX, int poxY)
{
float alphaf = (float)alpha / 100;
//creo un oggetto image a partire da un file esistente

Image timbro = Image.FromFile(timbroFilePath);
//crea il rettangolo che rappresenterà l'area di disegno

Rectangle myRec = new Rectangle(posX,poxY,timbro.Width,timbro.Height);

float [][] colorArray ={ // r v b a

new float[] {1, 0, 0, 0, 0},//r

new float[] {0, 1, 0, 0, 0},//v

new float[] {0, 0, 1, 0, 0},//b

new float[] {0, 0, 0, alphaf, 0},//a

new float[] {0, 0, 0, 0, 1}};

/* legenda
* r = rosso
* v = verde
* b = blu
* a = alpha
* */
//contiene una matrice 5x5 contenente le coordinate per lo spazio RGBA

ColorMatrix myColorMatrix = new ColorMatrix(colorArray);

//contiene le informazioni sulla manipolazione del colore

ImageAttributes imageAttr = new ImageAttributes();
imageAttr.SetColorMatrix(myColorMatrix,ColorMatrixFlag.Default,ColorAdjustType.Bitmap);

//disegna l'immagine

myGraphics.DrawImage(timbro, myRec, 0, 0, timbro.Width, timbro.Height, GraphicsUnit.Pixel, imageAttr);
imageAttr.Dispose();
timbro.Dispose();
}

public void Save(string savePath)
{
myImage.Save(savePath);
myGraphics.Dispose();
myImage.Dispose();
}
}
}
</script>

chi mi sa dire perchè?lo devo salavre in qualche cartella particolare?questo cmq è l'errrore che mi da il server:

Server Error in '/' Application.
--------------------------------------------------------------------------------

Runtime Error
Description: An application error occurred on the server. The current custom error settings for this application prevent the details of the application error from being viewed remotely (for security reasons). It could, however, be viewed by browsers running on the local server machine.

Details: To enable the details of this specific error message to be viewable on remote machines, please create a <customErrors> tag within a "web.config" configuration file located in the root directory of the current web application. This <customErrors> tag should then have its "mode" attribute set to "Off".


<!-- Web.Config Configuration File -->

<configuration>
<system.web>
<customErrors mode="Off"/>
</system.web>
</configuration>


Notes: The current error page you are seeing can be replaced by a custom error page by modifying the "defaultRedirect" attribute of the application's <customErrors> configuration tag to point to a custom error page URL.


<!-- Web.Config Configuration File -->

<configuration>
<system.web>
<customErrors mode="RemoteOnly" defaultRedirect="mycustompage.htm"/>
</system.web>
</configuration>


GRAZIE
2.410 messaggi dal 13 febbraio 2003
Contributi
come ti viene comunicato dal messaggio di errore

Details: To enable the details of this specific error message to be viewable on remote machines, please create a <customErrors> tag within a "web.config" configuration file located in the root directory of the current web application. This <customErrors> tag should then have its "mode" attribute set to "Off".

imposta customErrors a mode=Off nel web.config

E poi posta qui l'errore completo che ti appare
82 messaggi dal 01 novembre 2001
non ti vorrei sembrare troppo ignorante ma come si fa?il mio sito si trova sul server di aruba
637 messaggi dal 12 agosto 2005
Devi modificare il file Web.Config, alla voce customErrors ed impostare l'attributo mode a Off. In questo modo abiliti la visualizzazione dei messaggi di errore anche da remoto. Quindi ricarica il file sul server.

La schermata sarà sostituita da una eccezione specifica: postane il contenuto e poi vediamo.
82 messaggi dal 01 novembre 2001
nel mio sito non ho trovato un file web.config,allora ne ho creato uno e l'ho messo sulla root principale,il testo del file è questo :

<?xml version="1.0" encoding="utf-8"?>

<configuration>
<configSections>
<sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
<sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
<section name="scriptResourceHandler" type="System.Web.Configuration.ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" allowDefinition="MachineToApplication"/>
<sectionGroup name="webServices" type="System.Web.Configuration.ScriptingWebServicesSectionGroup, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
<section name="jsonSerialization" type="System.Web.Configuration.ScriptingJsonSerializationSection, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" allowDefinition="Everywhere" />
<section name="profileService" type="System.Web.Configuration.ScriptingProfileServiceSection, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" allowDefinition="MachineToApplication" />
<section name="authenticationService" type="System.Web.Configuration.ScriptingAuthenticationServiceSection, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" allowDefinition="MachineToApplication" />
</sectionGroup>
</sectionGroup>
</sectionGroup>
</configSections>

<appSettings/>
<connectionStrings/>
<system.web>
<compilation debug="false">
<assemblies>
<add assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
</assemblies>
</compilation>

<httpHandlers>
<remove verb="*" path="*.asmx"/>
<add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
<add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
<add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" validate="false"/>
</httpHandlers>
<authentication mode="Windows" />
<pages>
<controls>
<add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
</controls>
</pages>

</system.web>

</configuration>

ma continua a darmi l'errore generico....come mai?
Modificato da Raistlin il 04 marzo 2007 14.37 -
2.410 messaggi dal 13 febbraio 2003
Contributi
per il semplice fatto che in quel web.config c'è tutto tranne quello che realmente ti serve ovvero

<configuration> 
<system.web> 
<customErrors mode="Off"/> 
</system.web> 
</configuration>
82 messaggi dal 01 novembre 2001
ok grazie....risolto con il web config...ho cambiato un poco il codice e ora non da errore però lo script non funziona.Visualizza solo la prima immagine senza metterci l'altra sopra...ora vi posto il codice come l'ho corretto

void Page_Load(object sender, EventArgs e) {
//Qui richiamo la funzione principale passando come parametro il testo che intendo apporre sull'immagine
CreaImmagine();
}

void CreaImmagine() {

System.Drawing.Image myImage = System.Drawing.Image.FromFile(Server.MapPath("1.jpg"));
Graphics myGraphics = Graphics.FromImage(myImage);



float alphaf = (float)1 / 100;
//creo un oggetto image a partire da un file esistente
System.Drawing.Image timbro = System.Drawing.Image.FromFile(Server.MapPath("logo5.gif"));

//crea il rettangolo che rappresenterà l'area di disegno

Rectangle myRec = new Rectangle(1,1,timbro.Width,timbro.Height);

float [][] colorArray ={ // r v b a

new float[] {1, 0, 0, 0, 0},//r

new float[] {0, 1, 0, 0, 0},//v

new float[] {0, 0, 1, 0, 0},//b

new float[] {0, 0, 0, alphaf, 0},//a

new float[] {0, 0, 0, 0, 1}};

/* legenda
* r = rosso
* v = verde
* b = blu
* a = alpha
* */
//contiene una matrice 5x5 contenente le coordinate per lo spazio RGBA

ColorMatrix myColorMatrix = new ColorMatrix(colorArray);

//contiene le informazioni sulla manipolazione del colore

ImageAttributes imageAttr = new ImageAttributes();
imageAttr.SetColorMatrix(myColorMatrix,ColorMatrixFlag.Default,ColorAdjustType.Bitmap);

//disegna l'immagine

myGraphics.DrawImage(timbro, myRec, 0, 0, timbro.Width, timbro.Height, GraphicsUnit.Pixel, imageAttr);
imageAttr.Dispose();
timbro.Dispose();

Response.ContentType = "image/jpeg";

myImage.Save(Response.OutputStream, ImageFormat.Jpeg);


myGraphics.Dispose();
myImage.Dispose();


}

grazie
82 messaggi dal 01 novembre 2001
risolto questo è il testo funzionante!!!

<%@ Page Language="C#" Debug="true" %>
<%@ import Namespace="System" %>
<%@ import Namespace="System.Drawing" %>
<%@ import Namespace="System.Drawing.Imaging" %>
<%@ import Namespace="System.Drawing.Drawing2D" %>
<script runat="server">
void Page_Load(object sender, EventArgs e) {
//Qui richiamo la funzione principale
CreaImmagine();
}
void CreaImmagine() {

System.Drawing.Image myImage = System.Drawing.Image.FromFile(Server.MapPath("1.jpg"));
Graphics myGraphics = Graphics.FromImage(myImage);

//creo un oggetto image a partire da un file esistente
System.Drawing.Image timbro = System.Drawing.Image.FromFile(Server.MapPath("logo5.gif"));

//crea il rettangolo che rappresenterà l'area di disegno

Rectangle myRec = new Rectangle(1,1,timbro.Width,timbro.Height);

float [][] colorArray ={ // r v b a

new float[] {1, 0, 0, 0, 0},//r

new float[] {0, 1, 0, 0, 0},//v

new float[] {0, 0, 1, 0, 0},//b

new float[] {0, 0, 0, 1, 0},//a

new float[] {0, 0, 0, 0, 1}};

/* legenda
* r = rosso
* v = verde
* b = blu
* a = alpha
* */
//contiene una matrice 5x5 contenente le coordinate per lo spazio RGBA

ColorMatrix myColorMatrix = new ColorMatrix(colorArray);

//contiene le informazioni sulla manipolazione del colore

ImageAttributes imageAttr = new ImageAttributes();
imageAttr.SetColorMatrix(myColorMatrix,ColorMatrixFlag.Default,ColorAdjustType.Bitmap);

//disegna l'immagine

myGraphics.DrawImage(timbro, myRec, 0, 0, timbro.Width, timbro.Height, GraphicsUnit.Pixel, imageAttr);

imageAttr.Dispose();
timbro.Dispose();

Response.ContentType = "image/jpeg";
myImage.Save(Response.OutputStream, ImageFormat.Jpeg);


myGraphics.Dispose();
myImage.Dispose();

}
</script>

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.