Top Banner

of 27

code Thi Thuc Hanh Xu Ly Anh Qt creator

Jun 02, 2018

Download

Documents

khoaitay123
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
  • 8/10/2019 code Thi Thuc Hanh Xu Ly Anh Qt creator

    1/27

    TNG HP CC BUI THC HNH

    BUI 1,2

    L Duy Thanh-

    Th vin:

    #include#include#include

    #include

    1. X l button Chn

    voidMainWindow::on_btnchon_cliced!" Q$t%ing&name'QFileDialog::get(penFile)ame!thi*+,*elect&ile,+,-:.,"/ i&!&name0i*-mpt1!"" %etu%n/

    ui2>txtchonanh2>*et3ext!&name"/ ..QPixmappixmap!&name"/ ..QLabel4label'newQLabel!"/ ..label2>*etPixmap!pixmap"/ ..label2>*how!"/5

    2. Th! "#! $%n& t'! (nh X%)

    3. voidMainWindow::on_bnt*taxam_cliced!"

  • 8/10/2019 code Thi Thuc Hanh Xu Ly Anh Qt creator

    2/27

    4. 5. Q6mageimage_in!ui2>txtchonanh2>text!""/..docanhtu&ileanh6. ..3aoanhet7uac8ichthuocbanganhdauvao7. Q6mage

    image_out!image_in0width!"+image_in0height!"+Q6mage::Fo%mat_9;="/8. intc'ui2>txtmucxam2>text!"0to6nt!"/..biendoichuoithanh*o9. &o%!intx'/xtxtmucxam2>text!"0to6nt!"/..biendoichuoithanh*o &o%!intx'/x

  • 8/10/2019 code Thi Thuc Hanh Xu Ly Anh Qt creator

    3/27

    i&!out>=@@"out'=@@/..iemt%aout el*ei&!outpiamapvagancholabel label_in2>*etPixmap!QPixmap::&%om6mage!image_in""/ label_in2>*how!"/

    ..hienthianhxul1 QLabel4label_out'newQLabel!"/ ..Doiimage2>piamapvagancholabel label_out2>*etPixmap!QPixmap::&%om6mage!image_out""/ label_out2>*how!"/

    }

    .+ Th! "#! "/ t0n& h(n (nh 3%)

    voidMainWindow::on_bntanhxam_pt_cliced!" Q6mageimage_in!ui2>txtchonanh2>text!""/..docanhtu&ileanh ..3aoanhet7uac8ichthuocbanganhdauvao Qimageimage_out!image_in0width!"+image_in0height!"+Q6mage::Fo%mat_9;="/ &loatc'ui2>txtdtphan2>text!"0toFloat!"/..biendoichuoithanh*o &o%!intx'/ximage_out2>text!""/ tochucdo!image_out+H=I"/

    }

  • 8/10/2019 code Thi Thuc Hanh Xu Ly Anh Qt creator

    4/27

    4+ Th "#! "/ t0n& h(n (nh )-u

    voidMainWindow::on_bntanhmau_tp_cliced!" Q6mageimage_in!ui2>txtchonanh2>text!""/..docanhtu&ileanh ..3aoanhet7uac8ichthuocbanganhdauvao

    Q6mageimage_out!image_in0width!"+image_in0height!"+Q6mage::Fo%mat_9;="/ &loatc'ui2>txtdtphan2>text!"0toFloat!"/..biendoichuoithanh*o &o%!intx'/xtxtphannguong2>text!"0to6nt!"/..biendoichuoithanh*o &o%!intx'/x

  • 8/10/2019 code Thi Thuc Hanh Xu Ly Anh Qt creator

    5/27

    image_out0*etPixel!x+1+colo%_out"/ 5 ..Aienthianhgoc QLabel4label_in'newQLabel!"/ ..Doiimage2>piamapvagancholabel label_in2>*etPixmap!QPixmap::&%om6mage!image_in""/ label_in2>*how!"/

    ..hienthianhxul1 QLabel4label_out'newQLabel!"/ ..Doiimage2>piamapvagancholabel label_out2>*etPixmap!QPixmap::&%om6mage!image_out""/ label_out2>*how!"/5

    8+ Ph6n n&07n& (nh )-u

    voidMainWindow::on_bntphannguonganhmau_cliced!" Q6mageimage_in!ui2>txtchonanh2>text!""/..docanhtu&ileanh ..3aoanhet7uac8ichthuocbanganhdauvao Q6mageimage_out!image_in0width!"+image_in0height!"+Q6mage::Fo%mat_9;="/ intc'ui2>txtphannguong2>text!"0to6nt!"/..biendoichuoithanh*o &o%!intx'/x

  • 8/10/2019 code Thi Thuc Hanh Xu Ly Anh Qt creator

    6/27

    i&!&name0i*-mpt1!"" %etu%n/ ui2>txtchonanhH2>*et3ext!&name"/5

    voidMainWindow::on_bntchonanh=_cliced!" Q$t%ing&name'QFileDialog::get(penFile)ame!"/ i&!&name0i*-mpt1!"" %etu%n/ ui2>txtchonanh=2>*et3ext!&name"/5

    voidMainWindow::on_bntconganh_cliced!" Q6mageanhH!ui2>txtchonanhH2>text!""/ Q6mageanh=!ui2>txtchonanh=2>text!""/ &loattile'ui2>txtopcciti2>text!"0toFloat!"/ Q6mageimagecong!anhH0width!"+anhH0height!"+Q6mage::Fo%mat_9;="/ &o%!intx'/xtxtopcciti2>text!"0toFloat!"/ Q6mageimaget%u!anhH0width!"+anhH0height!"+Q6mage::Fo%mat_9;="/ &o%!intx'/x

  • 8/10/2019 code Thi Thuc Hanh Xu Ly Anh Qt creator

    7/27

    &o%!int1'/1piamapvagancholabel label_inH2>*etPixmap!QPixmap::&%om6mage!anhH""/ label_inH2>*how!"/

    QLabel4label_in='newQLabel!"/ ..Doiimage2>piamapvagancholabel label_in=2>*etPixmap!QPixmap::&%om6mage!anh=""/ label_in=2>*how!"/

    ..hienthianhxul1 QLabel4label_out'newQLabel!"/ ..Doiimage2>piamapvagancholabel label_out2>*etPixmap!QPixmap::&%om6mage!imaget%u""/ label_out2>*how!"/5

    1=+ T# >h?> "@ (nh 3%)

    voidMainWindow::tochucdo!con*tQ6mageGimg+con*tintGhi*_height" inthJ=@K/ &o%!inti'/i*etPixmap!QPixmap::&%om6mage!img""/ label_in2>*how!"/ QLabel4label_out'newQLabel!"/ label_out2>*etPixmap!QPixmap::&%om6mage!img_hi*""/ label_out2>*how!"/

  • 8/10/2019 code Thi Thuc Hanh Xu Ly Anh Qt creator

    8/27

    }

    G! h-) t# >h?> "@

    voidMainWindow::on_btnchon_=_cliced!" Q6mageimage!ui2>txtchonanh_tcd2>text!""/ tochucdo!image+H=I"/5voidMainWindow::on_bntchon_tcd_cliced!" Q$t%ing&name'QFileDialog::get(penFile)ame!"/ i&!&name0i*-mpt1!"" %etu%n/ ui2>txtchonanh_tcd2>*et3ext!&name"/

    }A0u h! b%o h-) t;on& lD hEFE;$

    p%ivate: Bi::MainWindow4ui/ voidtochucdo!con*tQ6mageGimg+con*tintGhi*_height"/ voidtochucdoanhmau!con*tQ6mageGimage+con*tintGhi*_height"/

    }

    11+ T# >h?> "@ (nh )-u

    voidMainWindow::tochucdoanhmau!con*tQ6mageGimage+con*tintGhi*_height"

    Q6mageimage_hi*H'Q6mage!=@K+hi*_height+Q6mage::Fo%mat_9;="/ Q6mageimage_hi*='Q6mage!=@K+hi*_height+Q6mage::Fo%mat_9;="/

    Q6mageimage_hi*'Q6mage!=@K+hi*_height+Q6mage::Fo%mat_9;="/ image_hi*H0&ill!Qt::white"/ image_hi*=0&ill!Qt::white"/ image_hi*0&ill!Qt::white"/ inth%J=@K+hgJ=@K+hbJ=@K/ &o%!inti'/imax"max'h%Ji/ i&!hgJi>max"max'hgJi/ i&!hbJi>max"max'hbJi/ 5

    intlineAeight/

  • 8/10/2019 code Thi Thuc Hanh Xu Ly Anh Qt creator

    9/27

    &o%!inti'/ihi*_height2H2lineAeight/N22" image_hi*=0*etPixel!i+N+79gb!+=@@+""/

    lineAeight'hi*_height4hbJi.max/ &o%!intN'hi*_height2H/N>hi*_height2H2lineAeight/N22" image_hi*0*etPixel!i+N+79gb!++=@@""/ 5 QLabel4label_in'newQLabel!"/ label_in2>*etPixmap!QPixmap::&%om6mage!image""/ label_in2>*how!"/

    QLabel4label_outH'newQLabel!"/ label_outH2>*etPixmap!QPixmap::&%om6mage!image_hi*H""/ ..label_out2>*etWindow3itle!QFile6n&o!ui2>line-dit2>text!""0&ile)ame!""/

    label_outH2>*how!"/ QLabel4label_out='newQLabel!"/ label_out=2>*etPixmap!QPixmap::&%om6mage!image_hi*=""/ ..label_out2>*etWindow3itle!QFile6n&o!ui2>line-dit2>text!""0&ile)ame!""/ label_out=2>*how!"/ QLabel4label_out'newQLabel!"/ label_out2>*etPixmap!QPixmap::&%om6mage!image_hi*""/ ..label_out2>*etWindow3itle!QFile6n&o!ui2>line-dit2>text!""0&ile)ame!""/ label_out2>*how!"/

    }

    !"i h$ %& ch'c ()

    voidMainWindow::on_bntanhmau_tcd_cliced!" Q6mageimage!ui2>txtchonanh_tcd2>text!""/ tochucdoanhmau!image+H="/

    }

    12+ nh 6) b(n (nh 3%)

    voidMainWindow::on_bnt_anhamban_cliced!" Q6mageimage_in!ui2>txtchonanh2>text!""/..docanhtu&ileanh ..3aoanhet7uac8ichthuocbanganhdauvao Q6mageimage_out!image_in0width!"+image_in0height!"+Q6mage::Fo%mat_9;="/

    &o%!intx'/x

  • 8/10/2019 code Thi Thuc Hanh Xu Ly Anh Qt creator

    10/27

    Q9gbcolo%_out'79gb!out+out+out"/..thanhphangiongnhau*ecomauxam ..anmauchopixel!x+1"t%enanhet7ua image_out0*etPixel!x+1+colo%_out"/ 5 ..Aienthianhgoc QLabel4label_in'newQLabel!"/ ..Doiimage2>piamapvagancholabel label_in2>*etPixmap!QPixmap::&%om6mage!image_in""/ label_in2>*how!"/ ..hienthianhxul1 QLabel4label_out'newQLabel!"/ ..Doiimage2>piamapvagancholabel label_out2>*etPixmap!QPixmap::&%om6mage!image_out""/ label_out2>*how!"/

    }

    1*+ nh 6) b(n (nh )-u

    voidMainWindow::on_bnt_anhamban_anhmau_cliced!" Q6mageimage_in!ui2>txtchonanh2>text!""/..docanhtu&ileanh Q6mageimage_out!image_in0width!"+image_in0height!"+Q6mage::Fo%mat_9;="/ &o%!intx'/xpiamapvagancholabel label_in2>*etPixmap!QPixmap::&%om6mage!image_in""/ label_in2>*how!"/

    ..hienthianhxul1 QLabel4label_out'newQLabel!"/ ..Doiimage2>piamapvagancholabel label_out2>*etPixmap!QPixmap::&%om6mage!image_out""/ label_out2>*how!"/

    }

  • 8/10/2019 code Thi Thuc Hanh Xu Ly Anh Qt creator

    11/27

    BUI *

    1. X l bunton Chn

    2. voidMainWindow::on_bntchon_cliced!"3. 4. Q$t%ing&name'QFileDialog::get(penFile)ame!"/5. i&!&name0i*-mpt1!""

    6. %etu%n/7. ui2>txtchonanh2>*et3ext!&name"/

    8. }

    2+ B!n "#! tun tnh (nh 3%)

    voidMainWindow::on_bnt_ax_bdtt_cliced!" Q6mageimg_in!ui2>txtchonanh2>text!""/ Q6mageimg_out!img_in0width!"+img_in0height!"+Q6mage::Fo%mat_9;"/ intmin'=@@/ intmax'/ &o%!intx'/xmax"max'g%a1/ i&!g%a1

  • 8/10/2019 code Thi Thuc Hanh Xu Ly Anh Qt creator

    12/27

    intg%a1' 7%a1!%gb"/ intcolo%_out'!=@@4!g%a12min"".!max2min"/ img_in0*etPixel!x+1+79gb!g%a1+g%a1+g%a1""/ img_out0*etPixel!x+1+79gb!colo%_out+colo%_out+colo%_out""/ 5 QLabel4label_H'newQLabel!"/ label_H2>*etPixmap!QPixmap::&%om6mage!img_in""/ label_H2>*etWindow3itle!,anhgoc,"/ label_H2>*how!"/ QLabel4label_='newQLabel!"/ label_=2>*etPixmap!QPixmap::&%om6mage!img_out""/ label_=2>*etWindow3itle!,anhgoc,"/ label_=2>*how!"/ ..Q$t%ing&n'QFileDialog::get$aveFile)ame!"/ ..img_out0*ave!&n"/ tochucdo!img_out+H=I"/

    5

    *+ B!n "#! tun tnh (nh )-u

    voidMainWindow::on_bnt_xm_bdtt_cliced!" Q6mageimage_in!ui2>txtchonanh2>text!""/ Q6mageimage_out!image_in0width!"+image_in0height!"+Q6mage::Fo%mat_9;="/

    intmax_%ed'/ intmin_%ed'=@@/ intmax_g%een'/ intmin_g%een'=@@/ intmax_blue'/ intmin_blue'=@@/ &o%!inti'/imax_%ed"max_%ed'colo%0%ed!"/ i&!colo%0%ed!"max_blue"max_blue'colo%0blue!"/ i&!colo%0blue!"

  • 8/10/2019 code Thi Thuc Hanh Xu Ly Anh Qt creator

    13/27

    QLabel4label_out'newQLabel!"/ label_out2>*etPixmap!QPixmap::&%om6mage!image_out""/

    ..label_out2>*etWindow3itle!QFile6n&o!ui2>txtchonanh2>text!""0&ile)ame!"?,;inh Ohung,"/

    label_out2>*how!"/ tochucdoanhmau!image_out+H=I"/

    }

    .+ CJn t# >h?> "K (nh 3%)

    voidMainWindow::on_bnt_ax_cbtcd_cliced!" Q6mageimage_in!ui2>txtchonanh2>text!""/ Q6mageimage_out!image_in0width!"+image_in0height!"+Q6mage::Fo%mat_9;="/ &loathJ=@K/ &o%!inti'/i

  • 8/10/2019 code Thi Thuc Hanh Xu Ly Anh Qt creator

    14/27

    label_out2>*how!"/ tochucdo!image_out+H=I"/

    }

    4+ CJn t# >h?> "@ (nh )-u

    voidMainWindow::on_bnt_am_cbtcd_cliced!" Q6mageimage_in!ui2>txtchonanh2>text!""/ Q6mageimage_out!image_in0width!"+image_in0height!"+Q6mage::Fo%mat_9;="/ &loath%J=@K+hgJ=@K+hbJ=@K/ &o%!inti'/i*how!"/

    QLabel4label_out'newQLabel!"/ label_out2>*etPixmap!QPixmap::&%om6mage!image_out""/ ..label_out2>*etWindow3itle!QFile6n&o!ui2>txtchonanh2>text!""0&ile)ame!"?,et7ua,"/ label_out2>*how!"/ tochucdoanhmau!image_out+H=I"/5

  • 8/10/2019 code Thi Thuc Hanh Xu Ly Anh Qt creator

    15/27

    5+ A> T;un& BLnh

    voidMainWindow::on_bnt_loct%ingbinh_cliced!" Q6mageimage_in!ui2>txtchonanh2>text!""/ intma%gin'H/ intcell'/ Q6mageimage_out!image_in0width!"2ma%gin+image_in0height!"2ma%gin+Q6mage::Fo%mat_9;="/ QColo%colo%/ int*um9+*um+*um;/ &o%!intx'ma%gin/x

  • 8/10/2019 code Thi Thuc Hanh Xu Ly Anh Qt creator

    16/27

    hJ'g%a1/ ??/ 5 7$o%t!h+h?cell"/ intm'/ image_out0*etPixel!x+1+79gb!hJm+hJm+hJm""/5 QLabel4label_in'newQLabel!"/ label_in2>*etPixmap!QPixmap::&%om6mage!image_in""/ label_in2>*etWindow3itle!,anhgoc,"/ label_in2>*how!"/

    QLabel4label_out'newQLabel!"/ label_out2>*etPixmap!QPixmap::&%om6mage!image_out""/ label_out2>*etWindow3itle!QFile6n&o!ui2>txtchonanh2>text!""0&ile)ame!"?,et7ua,"/ label_out2>*how!"/ tochucdo!image_out+H=I"/5

    9. A> MEF!n (nh )-u

    10. voidMainWindow::on_bnt_locmedian_am_cliced!"11. 12. Q6mageimage_in!ui2>txtchonanh2>text!""/13. intma%gin'H/14. intcell'/15. inth9J+hJ+h;J/16. Q6mageimage_out!image_in0width!"2ma%gin+17. image_in0height!"2ma%gin+Q6mage::Fo%mat_9;="/18.

    19. QColo%colo%/20. &o%!intx'ma%gin/x

  • 8/10/2019 code Thi Thuc Hanh Xu Ly Anh Qt creator

    17/27

    45. label_out2>*etPixmap!QPixmap::&%om6mage!image_out""/46. label_out2>*etWindow3itle!QFile6n&o!ui2>txtchonanh2

    >text!""0&ile)ame!"?,et7ua,"/47. label_out2>*how!"/48. tochucdoanhmau!image_in+H=I"/49. tochucdoanhmau!image_out+H=I"/50. 5

    BUI .

    1. X l button Chn

    =0 voidMainWindow::on_bntchon_cliced!"0 0 Q$t%ing&name'QFileDialog::get(penFile)ame!"/@0 i&!&name0i*-mpt1!""K0 %etu%n/I0 ui2>txtchonanh2>*et3ext!&name"/0 5

    2+ G;F!Ent (nh 3%)

    voidMainWindow::on_bnt_g%adient_cliced!"Q6mageimage_in!ui2>txtchonanh2>text!""/Q6mageimage_out_x!image_in0width!"2H+image_in0height!"+Q6mage::Fo%mat_9;="/Q6mageimage_out_1!image_in0width!"+image_in0height!"2H+Q6mage::Fo%mat_9;="/QColo%colo%/ ..locduongbiendoc &o%!inti'/i

  • 8/10/2019 code Thi Thuc Hanh Xu Ly Anh Qt creator

    18/27

    Q9gbcolo%H'image_in0pixel!i+N"/ intg%a1H'7%a1!colo%H"/ ..Q9gbcolo%_in'79gb!g%a1H+g%a1H+g%a1H"/ image_in0*etPixel!i+N+colo%H"/ Q9gbcolo%='image_in0pixel!i?H+N"/ intg%a1='7%a1!colo%="/ intnewg%a1'ab*!g%a1=2g%a1H"/ image_out_x0*etPixel!i+N+79gb!newg%a1+newg%a1+newg%a1""/ 5 5 &o%!inti'/i

  • 8/10/2019 code Thi Thuc Hanh Xu Ly Anh Qt creator

    19/27

    intnewg%a1H'ab*!colo%=0%ed!"2colo%H0%ed!""/ intnewg%a1='ab*!colo%=0g%een!"2colo%H0g%een!""/ intnewg%a1'ab*!colo%=0blue!"2colo%H0blue!""/ image_out_x0*etPixel!i+N+79gb!newg%a1H+newg%a1=+newg%a1""/ 5 5 &o%!inti'/i%>h 1

    voidMainWindow::on_bnt_%obe%t*_cliced!"Q6mageimage_in!ui2>txtchonanh2>text!""/Qimageimage_out_x!image_in0width!"+image_in0height!"+Q6mage::Fo%mat_9;="/Q6mageimage_out_1!image_in0width!"+image_in0height!"+Q6mage::Fo%mat_9;="/

    ..locduongbiendoc &o%!inti'/i

  • 8/10/2019 code Thi Thuc Hanh Xu Ly Anh Qt creator

    20/27

    5 &o%!inti'/i%>h 2

    voidMainWindow::on_bnt_%obe%t*_=_cliced!"Q6mageimage_in!ui2>txtchonanh2>text!""/Q6mageimage_out_E!image_in0width!"+image_in0height!"+Q6mage::Fo%mat_9;="/

    Q6mageimage_out_R!image_in0width!"+image_in0height!"+Q6mage::Fo%mat_9;="/ intma*$iSe'=/ intma%gin'ma*$iSe.=/ intma*HJ=J=/ intma*=J=J=/ ma*HJJ'H/ma*HJHJ'/ ma*HJJH'/ma*HJHJH'2H/ ma*=JJ'/ma*=JHJ'H/ ma*=JJH'2H/ma*=JHJH'/

    &o%!intx'ma%gin/x

  • 8/10/2019 code Thi Thuc Hanh Xu Ly Anh Qt creator

    21/27

    5 QLabel4label_in'newQLabel!"/ label_in2>*etPixmap!QPixmap::&%om6mage!image_in""/ ..label_in2>*etWindow3itle!QFile6n&o!ui2>line-dit2>text!""0&ile)ame!""/ label_in2>*how!"/

    QLabel4label_out_E'newQLabel!"/ label_out_E2>*etPixmap!QPixmap::&%om6mage!image_out_E""/ ..label_out_E2>*etWindow3itle!QFile6n&o!ui2>line-dit2>text!""0&ile)ame!"?,E,"/ label_out_E2>*how!"/

    QLabel4label_out_R'newQLabel!"/ label_out_R2>*etPixmap!QPixmap::&%om6mage!image_out_R""/ ..label_out_R2>*etWindow3itle!QFile6n&o!ui2>line-dit2>text!""0&ile)ame!"?,R,"/ label_out_R2>*how!"/

    5

    5+ obE;t$ (nh )-u

    voidMainWindow::on_bnt_%obe%t*_mau_cliced!"

    Q6mageimage_in!ui2>txtchonanh2>text!""/Q6mageimage_out_x!image_in0width!"2H+image_in0height!"+Q6mage::Fo%mat_9;="/Q6mageimage_out_1!image_in0width!"+image_in0height!"2H+Q6mage::Fo%mat_9;="/ ..locduongbiendoc

    &o%!inti'/i

  • 8/10/2019 code Thi Thuc Hanh Xu Ly Anh Qt creator

    22/27

    5 QLabel4label_in'newQLabel!"/ label_in2>*etPixmap!QPixmap::&%om6mage!image_in""/ label_in2>*how!"/ QLabel4label_x'newQLabel!"/ label_x2>*etPixmap!QPixmap::&%om6mage!image_out_x""/ label_x2>*etWindow3itle!QFile6n&o!ui2>txtchonanh2>text!""0&ile)ame!"?,anhgx,"/ label_x2>*how!"/ QLabel4label_1'newQLabel!"/ label_12>*etPixmap!QPixmap::&%om6mage!image_out_1""/ label_12>*etWindow3itle!QFile6n&o!ui2>txtchonanh2>text!""0&ile)ame!"?,anhg1,"/ label_12>*how!"/5

    8+ OobEl (nh 3%)

    voidMainWindow::on_bnt_*obel_mau_cliced!" Q6mageimage_in!ui2>txtchonanh2>text!""/ intma%gin'H/

    intmangJ'2H+2=+2H++++H+=+H5/ intmangHJ'2H++H+2=++=+2H++H5/Q6mageimage_out!image_in0width!"2ma%gin+image_in0height!"2ma%gin+Q6mage::Fo%mat_9;="/Q6mageimage_outH!image_in0width!"2ma%gin+image_in0height!"2ma%gin+Q6mage::Fo%mat_9;="/ int*um+*umH/ Q9gbcolo%/ &o%!intx'ma%gin/x

  • 8/10/2019 code Thi Thuc Hanh Xu Ly Anh Qt creator

    23/27

    5

    9OobEl (nh )-u

    voidMainWindow::on_bnt_*obel_cliced!"

    Q6mageimage_in!ui2>txtchonanh2>text!""/ intma%gin'H/ intmangJ'2H+2=+2H++++H+=+H5/ intmangHJ'2H++H+2=++=+2H++H5/Q6mageimage_out!image_in0width!"2ma%gin+image_in0height!"2ma%gin+Q6mage::Fo%mat_9;="/Q6mageimage_outH!image_in0width!"2ma%gin+image_in0height!"2ma%gin+Q6mage::Fo%mat_9;="/ int*um9+*um+*um;+*um9H+*umH+*um;H/ QColo%colo%/ QColo%colo%H/ &o%!intx'ma%gin/x*etPixmap!QPixmap::&%om6mage!image_outH""/ label=2>*how!"/

    QLabel4labelH'newQLabel!"/ labelH2>*etPixmap!QPixmap::&%om6mage!image_in""/ labelH2>*how!"/

    QLabel4label'newQLabel!"/ label2>*etPixmap!QPixmap::&%om6mage!image_out""/ label2>*how!"/

    5

    9. T>h >hQ (nh 3%)

    H0 voidMainWindow::on_bnt_tichchap_cliced!"HH0

  • 8/10/2019 code Thi Thuc Hanh Xu Ly Anh Qt creator

    24/27

    H=0 Q6mageimage_in!ui2>txtchonanh2>text!""/H0 intma%gin'H/

    Q6mageimage_out_E!image_in0width!"2ma%gin+image_in0height!"2ma%gin+Q6mage::Fo%mat_9;="/Q6mageimage_out_R!image_in0width!"2ma%gin+image_in0height!"2ma%gin+Q6mage::Fo%mat_9;="/

    H0H@0 &loatJ/HK0HI0 J'ui2>line-dit_H2>text!"0toFloat!"/H0 JH'ui2>line-dit_=2>text!"0toFloat!"/H0 J='ui2>line-dit_2>text!"0toFloat!"/=0 J'ui2>line-dit_2>text!"0toFloat!"/=H0 J'ui2>line-dit_@2>text!"0toFloat!"/==0 J@'ui2>line-dit_K2>text!"0toFloat!"/=0 JK'ui2>line-dit_I2>text!"0toFloat!"/=0 JI'ui2>line-dit_2>text!"0toFloat!"/=@0 J'ui2>line-dit_2>text!"0toFloat!"/=K0 &o%!intx'ma%gin/x*etPixmap!QPixmap::&%om6mage!image_in""/0 label_in2>*etWindow3itle!QFile6n&o!ui2>txtchonanh2

    >text!""0&ile)ame!""/0 label_in2>*how!"/@0K0 QLabel4label_out_E'newQLabel!"/I0 label_out_E2>*etPixmap!QPixmap::&%om6mage!image_out_E""/0 label_out_E2>*etWindow3itle!QFile6n&o!ui2>txtchonanh2

    >text!""0&ile)ame!"?,E,"/0 label_out_E2>*how!"/@0

    @H0 QLabel4label_out_R'newQLabel!"/@=0 label_out_R2>*etPixmap!QPixmap::&%om6mage!image_out_R""/@0 label_out_R2>*etWindow3itle!QFile6n&o!ui2>txtchonanh2

    >text!""0&ile)ame!"?,R,"/@0 label_out_R2>*how!"/@@0 5

    1=+ T>h >hQ (nh )-u

    voidMainWindow::on_bnt_tichchap_mau_cliced!"

  • 8/10/2019 code Thi Thuc Hanh Xu Ly Anh Qt creator

    25/27

    Q6mageimage_in!ui2>txtchonanh2>text!""/ intma%gin'H/Q6mageimage_out_E!image_in0width!"2ma%gin+image_in0height!"2ma%gin+Q6mage::Fo%mat_9;="/Q6mageimage_out_R!image_in0width!"2ma%gin+image_in0height!"2ma%gin+Q6mage::Fo%mat_9;="/ &loatmangJ/ mangJ'ui2>line-dit_H2>text!"0toFloat!"/ mangJH'ui2>line-dit_=2>text!"0toFloat!"/ mangJ='ui2>line-dit_2>text!"0toFloat!"/ mangJ'ui2>line-dit_2>text!"0toFloat!"/ mangJ'ui2>line-dit_@2>text!"0toFloat!"/ mangJ@'ui2>line-dit_K2>text!"0toFloat!"/ mangJK'ui2>line-dit_I2>text!"0toFloat!"/ mangJI'ui2>line-dit_2>text!"0toFloat!"/ mangJ'ui2>line-dit_2>text!"0toFloat!"/..intcell*'/..Q6mageimage_out!image_in0width!"2ma%gin+image_in0height!"2ma%gin+Q6mage::Fo%mat_9;="/

    int*um9H+*umH+*um;H+*um9=+*um=+*um;=/QColo%colo%/

    &o%!intx'ma%gin/x

  • 8/10/2019 code Thi Thuc Hanh Xu Ly Anh Qt creator

    26/27

    QLabel4label_out_R'newQLabel!"/label_out_R2>*etPixmap!QPixmap::&%om6mage!image_out_R""/label_out_R2>*etWindow3itle!QFile6n&o!ui2>txtchonanh2>text!""0&ile)ame!"?,R,"/ label_out_R2>*how!"/

    5

    11+ H!Rn thS (nh "(o n&0>

    voidMainWindow::on_bntanhdaonguoc_cliced!"Q6mageimage_in!ui2>txtchonanh2>text!""/..docanhtu&ileanh ..3aoanhet7uac8ichthuocbanganhdauvaoQ6mageimage_out!image_in0width!"+image_in0height!"+Q6mage::Fo%mat_9;="/intc'ui2>txtmucxam2>text!"0to6nt!"/..biendoichuoithanh*o &o%!intx'/xpiamapvagancholabel label_in2>*etPixmap!QPixmap::&%om6mage!image_in""/ label_in2>*how!"/ ..hienthianhxul1 QLabel4label_out'newQLabel!"/ ..Doiimage2>piamapvagancholabel label_out2>*etPixmap!QPixmap::&%om6mage!image_out""/ label_out2>*how!"/ ..QPixmappixmap!4label_out2>pixmap!""/

    ..QMat%ix%m/ ..%m0%otate!2H"/..gocTUmVanh7ua1 ..pixmap'pixmap0t%an*&o%med!%m"/ ..label_out2>*etPixmap!pixmap"/

    }

    12+ OE (nh

    Q$t%ing&n'QFileDialog::get$aveFile)ame!"/

  • 8/10/2019 code Thi Thuc Hanh Xu Ly Anh Qt creator

    27/27

    i$g*ou%+save,n.