델파이 팁에 있는것 처럼 아래와 같이 코딩 했습니다..
그런데도 a4크기만큼만 인쇄가 되는군요...
살펴본 결과..사용자 용지로 정해논 크기가 적용이 안되는것 같군요..
물론 기본프린터의 용지설정은 132 Column이나 편집용지 보다 큰것으로 설정했습니다..
어째서 ..코딩대로 인쇄가 안될까요????????????????????????????
죽겠습니다..
어느분이라도 좋으니..답변좀 부탁드립니다... 꾸벅..
참고로 프린터는 대원 dpx4500입니다..
제발 부탁드립니다..일주일 동안 고민했습니다.
어디에 물어볼대도 없고...참... 미치겠습니다...
제발 부탁드립니다.
procedure TForm1.Button1Click(Sender: TObject);
var
Device : array[0..255] of char;
Driver : array[0..255] of char;
Port : array[0..255] of char;
hDMode : THandle;
PDMode : PDEVMODE;
begin
Printer.PrinterIndex := Printer.PrinterIndex;
Printer.GetPrinter(Device, Driver, Port, hDMode);
if hDMode <> 0 then
begin
pDMode := GlobalLock(hDMode);
if pDMode <> nil then
begin
{legal 용지로 바꾸는 예}
pDMode^.dmOrientation := DMORIENT_PORTRAIT;
pDMode^.dmFields := pDMode^.dmFields or
DM_ORIENTATION or
DM_PAPERSIZE or
DM_PAPERWIDTH or
DM_PAPERLENGTH;
pDMode^.dmPaperSize := DMPAPER_USER;
pDMode^.dmPaperWidth := 500 {단위는 mm}
pDMode^.dmPaperLength := 300 {단위는 mm}
pDMode^.dmFields := pDMode^.dmFields or DMBIN_MANUAL;
pDMode^.dmDefaultSource := DMBIN_MANUAL;
GlobalUnlock(hDMode);
end;
end;
> 델파이 팁에 있는것 처럼 아래와 같이 코딩 했습니다..
> 그런데도 a4크기만큼만 인쇄가 되는군요...
> 살펴본 결과..사용자 용지로 정해논 크기가 적용이 안되는것 같군요..
> 물론 기본프린터의 용지설정은 132 Column이나 편집용지 보다 큰것으로 설정했습니다..
> 어째서 ..코딩대로 인쇄가 안될까요????????????????????????????
> 죽겠습니다..
> 어느분이라도 좋으니..답변좀 부탁드립니다... 꾸벅..
> 참고로 프린터는 대원 dpx4500입니다..
> 제발 부탁드립니다..일주일 동안 고민했습니다.
> 어디에 물어볼대도 없고...참... 미치겠습니다...
> 제발 부탁드립니다.
>
> procedure TForm1.Button1Click(Sender: TObject);
> var
> Device : array[0..255] of char;
> Driver : array[0..255] of char;
> Port : array[0..255] of char;
> hDMode : THandle;
> PDMode : PDEVMODE;
> begin
> Printer.PrinterIndex := Printer.PrinterIndex;
> Printer.GetPrinter(Device, Driver, Port, hDMode);
> if hDMode <> 0 then
> begin
> pDMode := GlobalLock(hDMode);
> if pDMode <> nil then
> begin
> {legal 용지로 바꾸는 예}
>
> pDMode^.dmOrientation := DMORIENT_PORTRAIT;
> pDMode^.dmFields := pDMode^.dmFields or
> DM_ORIENTATION or
> DM_PAPERSIZE or
> DM_PAPERWIDTH or
> DM_PAPERLENGTH;
> pDMode^.dmPaperSize := DMPAPER_USER;
> pDMode^.dmPaperWidth := 500 {단위는 mm}
> pDMode^.dmPaperLength := 300 {단위는 mm}
>
> pDMode^.dmFields := pDMode^.dmFields or DMBIN_MANUAL;
> pDMode^.dmDefaultSource := DMBIN_MANUAL;
>
> GlobalUnlock(hDMode);
> end;
> end;
>
일반적으로 델에선 132, 또는 그이상의 크기는 기본지원에선 빠져 있죠,
프린터 설정에서 사용자정의 용지 크기를 디자인하신 크기대로
맞추어 놓구해보세요,,